support fit content canisue html css css3 safari flexbox

html - fit - altura de flexión de cromo y safari falla del 100%



css grid support (1)

Chrome es normal, falla de Safari. ¿Cómo puede ser eso compatible? height:100%;

Necesito mantener Chrome y usar Safari. Mi Safari versión 10.1.2 (12603.3.8)

* { margin: 0; padding: 0; box-sizing: border-box; outline: none; } * ::-webkit-scrollbar { width: 0; } html, body { height: 100%; width: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; flex-direction: column; } body { border: 5px solid red; } .d { height: 100%; border: 5px solid green; }

<div class="d"></div> <div class="d"></div>


Parece un error reciente de renderizado de Safari que involucra flex-direction: column . Coloca dos height: 100% elementos en el mismo espacio, y ambos rinden al 100% de altura y apilamiento en lugar de encajar en el mismo espacio.

Aquí hay dos soluciones:

  1. height: 100% cambio height: 100% a la height: 50% por lo que ambos elementos tienen la mitad de altura que sus padres, o ...

  2. Elimine el atributo de height y agregue flex: 1 para que ambos niños crezcan lo más grande posible en el espacio de los padres y se dividan 50/50 automáticamente.

* { margin: 0; padding: 0; box-sizing: border-box; outline: none; } *::-webkit-scrollbar { width: 0; } html, body { height: 100%; width: 100%; display: flex; flex-direction: column; } body { border: 5px solid red; } .d { height: 50%; border: 5px solid green; }

<div class="d"></div> <div class="d"></div>

* { margin: 0; padding: 0; box-sizing: border-box; outline: none; } *::-webkit-scrollbar { width: 0; } html, body { height: 100%; width: 100%; display: flex; flex-direction: column; } body { border: 5px solid red; } .d { flex: 1; border: 5px solid green; }

<div class="d"></div> <div class="d"></div>