css实现占满屏幕高度

html-css013

css实现占满屏幕高度,第1张

实现div占满整个屏幕

1)通过css高度100%,但是要div的父级元素高度为100%

前提:以知父级元素并且父级元素高度可控

2)通过100vh

前提:适合移动端或者不用兼容IE的项目

3)使用定位拉伸

样式设置高度撑满整个页面,那么必须从最外层一层一层设置高度100%;代码如下:html,body,div{

height:100%}

这里默认div是第三层,如果要撑满全页面的话,那么外层必须也是高度100%;

下面举个例子:

<html>

<head>

<style>

*{

padding:0

margin:0

box-sizing:border-box}

html,body,div{

height:100%

}

</style>

<body>

<div>高度全屏</div>

</body>

</html>

http://blog.csdn.net/huitoukest/article/details/51375345

核心原理;

height:100%这个概念是子节点相对于父容器而言;所以要让此属性生效,必要的一点就是:父容器必须具有具体的高度信息;

直接在的子节点(如div中)写height:100%是不会生效的,因为此时的高度是不确定的,默认是auto;

方法一

给从根的父容器到子容器的所有容器都设置好百分比高度信息

比如:

[html] view plain copy

132

这样从根的Html开始,到字的div结束,全部都具有百分比高度,这样,就都能够获取到高度信息;

方法二

给父容器设置具体的高度信息;

比如直接写死在样式中,或者用javascript来设置;

示例,用js使得到高度,从而使其中的div全屏:

[html] view plain copy

132

varscreenHeight=document.documentElement.clientHeight

varscreenWidth=document.documentElement.clientWidth

varbody=document.getElementById('body')

body.style.width=screenWidth+"px"

body.style.height=screenHeight+"px"

方法三

给父容器设置位置信息,让其得到高度信息;

示例,用css使body得到高度,从而使其中的div全屏:

[html] view plain copy

132