2012-06-22 15 views
5

Hay muchas preguntas sobre SO relacionadas con esto, pero las que escaneé son todas para situaciones específicas detalladas. Lo que quiero saber es, a nivel conceptual, ¿qué significa decir:¿Qué significa dar un div a style = 'height: 100%'?

<div style='height:100%'> 

¿Qué tan alto es 100%? 100% de qué?

[EDIT]

pregunta de seguimiento: Si el 100% representa la altura de los padres, pero los padres es <cuerpo> y no tiene ninguna otra altura que la altura de la div, entonces, ¿qué significa? Parece recursivamente definido.

Respuesta

4

100% de la altura del contenedor primario.

Ver aquí: http://jsfiddle.net/6VRn6/

Si desea utilizar este método para hacer el div 100% de la altura de la página, tiene que especificar la altura como el 100% del cuerpo y HTML también.

body, html { 
    height: 100%; 
} 

Cuando no se especifica una altura html o body, sus alturas son la suma de las alturas de los elementos que lo integran.

Updated demo mostrando esto. Tenemos un div 200px con bordes de 2px que suman 204px y luego un div de estado de 40px. La altura body debe ser de 244px. Ahora, si agrega el CSS arriba a la página, la altura será la altura del cuadrante inferior derecho del jsfiddle. Intenta agregarlo y ejecutar el código nuevamente. A continuación, cambie el tamaño del panel de resultados y ejecútelo de nuevo para ver el cambio de altura en consecuencia.

5

100% de offsetParent. En la mayoría de los casos, ese es el documento. También puede ser un elemento con position que no sea static, o un componente de una tabla.

+0

¿Qué tan alto es el documento y, a continuación, después de haber sido no se especifique lo contrario, y suponiendo un montón de elementos aleatorios están dentro de la div? ¿El 100% no significa nada? –

+0

Supongo que sería la altura de la ventana cuando se carga la página, pero no estoy seguro. No utilizo CSS tan dudoso;) –

+0

@ScottStafford La altura del "cuerpo" será la altura de los elementos que contiene. En mi ejemplo (en mi solución), tengo una caja con borde 2px. '$ (" cuerpo "). height()' devuelve '204' (200px + 2px * 2 para arriba/abajo) – sachleen

1

La altura: 100% significa: ¡Haga que div sea grande como el padre!

0

sólo significa el 100% de la div o class o tag que está encerrado dentro. Trate de tener una idea un poco esto:

{--parent loop { ..height 100% of above loop .. } }

Cuestiones relacionadas