我可以通过jQuery设置HTML元素的高度吗?

时间:2013-01-24 03:39:58

标签: jquery css html5 internet-explorer-6

我在Boilerplate(和HTML5Shiv)项目上遇到IE6兼容性问题。我一直在尝试将<html>元素设置为与<body>元素相同的高度,但无论出于何种原因,它都固定为100%而没有任何特定代码。每个页面的长度都是动态的,因此我无法设置特定值。

我想这样做是因为一个主要原因 - 即使下面还有其他内容,IE6也没有显示滚动条。

我试图通过以下代码设置高度而没有任何运气:

$("html").css("height", parseInt($("body").height()) + "px");

我还尝试了以下代码,只有<body>元素响应:

$("html, body").css("height", "2000px");

但是,我已经能够通过创可贴修复添加滚动:

html, body {
    overflow-y: scroll;
}

现在回到高度问题,这是否可以通过jQuery进行? IE6根本不支持我追求的东西吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我很惊讶没人提到这个。

忘记尝试调整<html>元素的大小。

html元素的大小并不重要。我也不打算尝试制作一个较小的body。如果您需要一定尺寸的元素,请在div内加body并设置样式。

HTML4 specification for the html tag未将style列为属性,而且很容易理解原因。

即使在像Chrome这样的现代浏览器中,尝试调整html元素的大小也会产生一些奇怪的结果:http://jsfiddle.net/QdCmM/