高度:IE7为100%

时间:2012-04-11 12:55:45

标签: css html height

更新

html和body的边距必须为0才能完全填充页面。

END UPDATE * 更新 *

我已修复使用以下建议将height属性添加到html和body标签。现在需要轻微向下滚动才能查看整个页面。关于为什么会这样的想法?

END UPDATE

我正在使用CSS根据需要在屏幕上填充div。我的宽度和高度设置为100%,但div没有填满屏幕的高度。这是IE7的已知问题还是我可能只是遗漏了什么?代码如下。

HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <link rel="Stylesheet" href="test.css" />
</head>
<body>
<div id="divy"></div>
</body>
</html>

CSS

#divy
{
    width:100%;
    height:100%;
    background-color:Blue;
}

4 个答案:

答案 0 :(得分:6)

问题是容器的高度必须为100%,因为它的子元素假定为100%...

在这种情况下,容器是<html> - &gt; <body>所以快速修复

html, body {
    margin: 0;
    padding: 0;
}
html, body, #divy {
    width:100%;
    height:100%;
}

答案 1 :(得分:3)

元素填充body元素的高度,该元素可以小于浏览器窗口。

设置htmlbody元素的高度,以便它们填充窗口:

html, body { height: 100%; }

答案 2 :(得分:1)

每当你定义一个100%的高度,它的所有后续祖先的祖先,也必须有100%的高度。

因此,请为body以及html提供100%的身高。

html, body { height: 100%; }

答案 3 :(得分:0)

您可以使用jQuery管理此问题:

jQuery('.yourDiv').height(jQuery('body').height());