视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
关于块级元素撑满整个浏览器窗口_html/css_WEB-ITnose
2020-11-27 16:12:32 责编:小采
文档


我们经常会需要将一个块级元素设置大小让它显示在页面中,最常用的就是设置具体的值。

例如在页面上显示一个粉色背景的像素为200px*200px的方形

...#mydiv{ width:200px; height:200px;background-color:pink}......

如果想让该div撑满整个浏览器窗口呢?

1.获取窗口的大小,然后再将值赋给改div的宽和高。(可以用javascript实现)

2.用height:100%;width:100%;

如果直接这样使用

...#mydiv{ width:100%; height:100%;background-color:pink;}...div...

你会发现是根本达不到预期的效果,撑起的部分还是靠div里面的文本

浏览器计算宽度时会参考浏览器窗口的宽度。如果你不给宽度设定任何缺省值,那浏览器会自动将页面内容平铺填满整个横向宽度。

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

换句话说,父元素的高度只是一个缺省值:height: auto;。当你要求浏览器根据这样一个缺省值来计算百分比高度时,只能得到undefined的结果。也就是一个null值,浏览器不会对这个值有任何的反应。

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

例如:在body中只有一个子元素div,该div的所有父元素就有:body和html

... html,body{ height: 100%; }#mydiv{background-color:blue;height:100%;width:100%}....

显示效果:

下载本文
显示全文
专题