Estoy tratando de establecer un div a una cierta altura porcentual en CSS
Porcentaje de qué?
Para establecer un alto de porcentaje, su elemento principal (*) debe tener una altura explícita. Esto es bastante evidente, ya que si deja la altura como auto
, el bloque tomará la altura de su contenido ... pero si el contenido en sí tiene una altura expresada en términos del porcentaje del padre que se ha hecho un Little Catch 22. El navegador se da por vencido y solo usa la altura del contenido.
Por lo tanto, el elemento primario del div debe tener una propiedad height
explícita. Si bien esa altura también puede ser un porcentaje si lo desea, eso solo lleva el problema al siguiente nivel.
Si usted desea hacer la altura div un porcentaje de la altura de la ventana gráfica, cada antepasado del div, incluyendo <html>
y <body>
, tiene que tener height: 100%
, por lo que no es una cadena de alturas porcentuales explícitas a la div.
(*: o, si el div se coloca, el 'bloque de contención', que es el antepasado más cercano a también se utilizará.)
Alternativamente, todos los navegadores modernos y IE> = 9 apoyo unidades de nueva CSS relación con la altura de visualización (vh
) y el ancho de la ventana gráfica (vw
):
div {
height:100vh;
}
ver aquí para more info.
Aquí hay una explicación simple y clara de la CSS 'propiedad altura característica con valores porcentuales: http://stackoverflow.com/a/31728799/3597276 –
aborda la cuestión DOCTYPE: http://stackoverflow.com/ a/32215263/3597276 –