Respuestas:
height: 100%
da al elemento el 100% de la altura de su contenedor principal.
height: auto
significa que la altura del elemento dependerá de la altura de sus hijos.
Considere estos ejemplos:
altura: 100%
<div style="height: 50px">
<div id="innerDiv" style="height: 100%">
</div>
</div>
#innerDiv
va a tener height: 50px
altura: auto
<div style="height: 50px">
<div id="innerDiv" style="height: auto">
<div id="evenInner" style="height: 10px">
</div>
</div>
</div>
#innerDiv
va a tener height: 10px
setting the height of the child element or the container element
. Puede hacer lo que sea necesario para lograr su diseño, siempre que siga cierta coherencia, evite la duplicación, reduzca el reproceso y agrupe diseños comunes. En resumen, debe haber un sistema / patrón para su trabajo, de modo que sea fácil de leer y modificar, y por supuesto el hecho de que debe funcionar
auto
hace que el elemento crezca para acomodar AMBOS su contenido Y el contenido de su hijo. Por el contrario, un valor de Altura fija no aumenta (ni muestra) el contenido que no puede caber dentro de la altura declarada. jsfiddle.net/m3f8y6xr/1 Creo que esta respuesta no está lo suficientemente redactada como para hacer ver que el elemento crecerá para incluir todo el contenido, ya sea su propio texto o el contenido de un niño. Por supuesto, se puede argumentar que su propio texto también es un niño. Esto proporciona confirmación visual del comportamiento.
Una altura del 100% para es, presumiblemente, la altura de la ventana interna de su navegador , porque esa es la altura de su padre , la página. Una auto
altura será la altura mínima del necesario contener .
El valor predeterminado está height: auto
en el navegador, pero height: X%
define la altura en porcentaje del bloque contenedor.
height: 100% funciona si el contenedor principal tiene una propiedad de altura especificada más, no funcionará
10px + the size it needs for its own content
- vea este jsfiddle