0

我有这样的代码:

<body>
    <div id='wrapper'>
        <div id='content'>
          <!--content that changes his height-->
        </div>
        <div id='footer'>
          <!--Footer content-->
        </div>
    </div>
</body>

CSS是这样的:

#wrapper{
   width : 1024px;
   position : relative;
}
#footer{
  position : absolute;
  bottom : 0;
  left : 0;
}

在 div#content 中,我有一些可以扩展或缩小的 div,因此当它们扩展时,它的高度会增加,从而增加容器 div#wrapper 的高度。在所有现代浏览器中,页脚位置都会正确重新计算,并且页脚放置在包装器 div 的最底部,但在 IE7 中不会发生这种情况:页脚保持在包装器增加其高度之前的相同位置。

做了一些谷歌搜索,我发现这种行为最可能的原因是“hasLayout bug”,所以我在 div#wrapper 中添加了属性zoom : 1,但问题并没有消失,所以我尝试将此属性添加到#footer 等其他元素没有任何成功。

我完全无知...

有人知道发生了什么吗?

提前致谢。

4

1 回答 1

0

好的,最后我找到了解决方案。我删除了位置:绝对,并设置了页脚的高度和宽度。在这里我发现了一些更奇怪的东西(至少对我来说是这样)。包装器的宽度为 1024 像素。如果我将页脚的宽度设置为 1024 像素,它会使用超过 1024 像素来溢出包装器。如果我将宽度设置为 100%,同样的问题。我必须将宽度设置为 91.5% 以将其调整为包装器的 1024 像素。有人知道这是什么原因吗?

感谢您的评论。

于 2013-05-01T09:20:34.910 回答