CSS height:100%无效

本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/38

浏览器根本就不计算内容的高度,除非内容超出了视窗范围(导致滚动条出现)。或者你给整个页面设置一个绝对高度。否则,浏览器就会简单的让内容往下堆砌,页面的高度根本就无需考虑。

因为页面并没有缺省的高度值,所以,当你让一个元素的高度设定为百分比高度时,无法根据获取父元素的高度,也就无法计算自己的高度。换句话说,父元素的高度只是一个缺省值:height: auto;。当你要求浏览器根据这样一个缺省值来计算百分比高度时,只能得到undefined的结果。也就是一个null值,浏览器不会对这个值有任何的反应。

解决方法:给父元素设置一个高度的有效值

参考:http://www.webhek.com/css-100-percent-height

原文地址:https://www.cnblogs.com/zhangyachen/p/8035683.html