height="100%"无效

因为浏览器不计算内容的高度,除非内容超出了视窗范围(导致滚动条出现)。或者你给整个页面设置一个绝对高度。否则,浏览器就会简单的让内容往下堆砌,页面的高度根本就无需考虑。
因为页面并没有缺省的高度值,所以,当你让一个元素的高度设定为百分比高度时,无法根据获取父元素的高度,也就无法计算自己的高度。
也即父元素的高度只是一个缺省值:height: auto。当你要求浏览器根据这样一个缺省值来计算百分比高度时,浏览器不会对这个值有任何的反应。


如果想让一个元素的百分比高度height: 100%;起作用,你需要给这个元素的所有父元素的高度设定一个有效值
例如

 html, body, div{ margin:0; height:100%; }

  1. Margins 和 padding 会让你的页面出现滚动条,也许这是你不希望的。
  2. 如果你的元素实际高度大于你设定的百分比高度,那元素的高度会自动扩展。

你可能感兴趣的:(#,前端基础,bug,前端,HTML,css)