Flexbugs: IE11: un solo elemento flexible con margen automático se cambia al extremo flexible

Creado en 2 jun. 2016  ·  3Comentarios  ·  Fuente: philipwalton/flexbugs

En IE11, un solo elemento flexible que está centrado en ambos ejes se desplaza al final del contenedor flexible si también tiene margin: auto;

ver: https://jsfiddle.net/50zbfq0p/

esto parece estar arreglado en Edge.

solución para IE: eliminar el margen automático

needs documenting

Comentario más útil

También me encontré con este problema hoy. Pude apuntar solo a IE con una consulta de medios para que el problema no interfiera con otros estilos aplicados a otros navegadores.
<strong i="6">@media</strong> screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) { // your code }

Todos 3 comentarios

Interesante, parece que intenta aplicar el margen _ además_ a la justificación del padre.

Probablemente sea una buena práctica en general usar el margen para centrar o usar las propiedades principales justify-content y align-items , pero no ambas.

Encontré un problema similar y también tuve que evitar margin: auto . Estoy de acuerdo con la solución alternativa / mejor práctica para evitar el uso de margin: auto junto con justify-content para todos los escenarios.

Me gustaría agregar a la discusión anterior: margin: auto en IE es muy poco confiable. Pueden ocurrir problemas incluso si hay más de un elemento presente e incluso si se utilizan valores no centrales para justify-content .
Este problema también está presente en UC Browser.

Aquí hay una demostración con 3 elementos y con justify-content: flex-end - https://jsfiddle.net/csz3uuuh/5/
(Los elementos 2 y 3 se cambian fuera de la caja en IE).

En mi caso, estaba tratando de alinear el segundo contenido en la parte inferior y el primer contenido en el centro del espacio restante usando margin:auto . Tuve que solucionarlo eliminando los márgenes automáticos y calculando los valores de los márgenes usando calc .

Pasé un poco de tiempo en esto, ya que no estaba en la página de inicio, y estaré encantado de enviar la documentación para esto. Hágame saber qué se debe hacer.

También me encontré con este problema hoy. Pude apuntar solo a IE con una consulta de medios para que el problema no interfiera con otros estilos aplicados a otros navegadores.
<strong i="6">@media</strong> screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) { // your code }

¿Fue útil esta página
0 / 5 - 0 calificaciones