Ich habe ein komplexes Layout, wo ich verschiedene Elemente vertikal und horizontal mit flexbox zentrieren.Flex auto margin funktioniert nicht in IE10/11
Das letzte Element hat dann margin-right:auto;
angewendet, um die Elemente nach links zu schieben (und die Zentrierung zu negieren).
Das funktioniert überall außer IE10/11 und hat mich verrückt gemacht.
HTML/CSS Beispiel:
#container {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-flow: row wrap;
-webkit-flex-flow: row wrap;
flex-flow: row wrap;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
-ms-flex-line-pack: center;
-webkit-align-content: center;
align-content: center;
}
#second-item {
margin-right: auto;
}
/* just some colors - not important */
#container {
height: 200px;
width: 100%;
background: red;
}
#container > div {
background: blue;
padding: 10px;
outline: 1px solid yellow;
}
<div id='container'>
<div id='first-item'>first item</div>
<div id='second-item'>second item</div>
</div>
http://codepen.io/anon/pen/NrWVbR
Sie werden zwei Elemente auf dem Bildschirm sehen, die auf der Seite des roten linksbündig werden soll Elternteil (dh sie sollten beide zentriert sein, aber das letzte Element hat margin-right:auto;
angewendet und füllt die gesamte Zeile, drückt das andere Element und i selbst auf der Seite) - das ist das richtige Verhalten. Außer in IE10/11, wo beide Elemente falsch zentriert sind, d. H. Die margin-right:auto;
des zweiten Elements wird ignoriert.
Irgendwelche IE/flexbox-Experten da draußen, die schon einmal so etwas erlebt haben?
Warum nicht nur die Autopannen entfernen und halten rechtfertigen-Inhalte? –