0

我有一个带包装的身体

<body>
  <div class="wrapper">//loads of content</div>
</body>

包装器设置为position: fixed;因为特殊的滚动行为和 javascript。我希望身体与包装具有相同的高度。

(如果有人对我为什么要尝试实现这一点感兴趣,我会尝试在这里解释我的问题: 设置固定元素的高度 但我觉得对于任何想要解决这个问题的人来说,这个问题都过于复杂了。)

4

1 回答 1

0

首先,您可以.wrapper像这样通过 CSS 设置 body 的高度:

height: inherit;

这里inherit将取出其父级的高度,然后将其设置为它的。

第二件事,你需要 javascript 因为如果你将使用 CSS,那么我担心你在调整大小时将无法控制 body 的大小。

使用 CSS:

height: whatever_body_height

使用 JS:

function getDocHeight() { /*For cross-browser*/
    var D = document;
    return Math.max(
        D.body.scrollHeight, D.documentElement.scrollHeight,
        D.body.offsetHeight, D.documentElement.offsetHeight,
        D.body.clientHeight, D.documentElement.clientHeight
    );
}
window.onresize = function () {
    document.getElementByClassName('.wrapper').style.height = getDocHeight();
}

希望它有所帮助。

于 2013-07-15T09:25:55.347 回答