html - "overflow: auto"在 Chrome 上的奇怪行为

标签 html css google-chrome overflow

我正在开发一个带有博客部分的网站。我需要这个部分有一个固定的高度。为了能够看到博客中的所有帖子,我添加了一个overflow: auto,以便在需要时显示滚动条。

<div id="container">
<div id="content">
    <div class="post">
         This is a long post....
    </div>
    <div class="post">
        This is a long post....
    </div>
    <div class="post">
        This is a long post....
    </div>
    ....
    ....
    ....
    ....
</div>
</div>

#container {
    overflow: hidden;
}

#content {
    height: 200px;
    overflow: auto;
    border: 1px solid red;
}

.post {
    margin: 20px 0;
}

我在 Chrome、Firefox 和 IE 上对此进行了测试。 Firefox 和 IE 上的站点按预期工作,但 Chrome 虽然在帖子列表大于容器时显示滚动条,但会在容器下添加一个与帖子列表大小相同的白色间隙。

我创建了一个 fiddle ,但我无法在那里重现 Chrome 的行为:

http://jsfiddle.net/u5d56/3/

使用 overflow: scroll 而不是 auto 得到相同的结果。

有什么想法吗?

提前致谢

最佳答案

我找到了解决问题的方法。出于某种原因,为了在 Chrome 中工作,我必须向 #content 添加一个 position:relative 规则:

#content{
    position: relative;
    height: 200px;
    overflow:visible;
    border 1px solid red;
}

关于html - "overflow: auto"在 Chrome 上的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22898335/

相关文章:

html - 将图像放在 Div 中

html - 如何创建带有切换选项卡内容的表格?

css - ie8 不会改变显示 div 的边距

javascript - 通过插入地址栏中的 Javascript 命令将值复制到剪贴板

html - Justify list-item 使它们下面有很大的差距。没有正常工作

html - 为什么我的 HTML 页面底部在我的内容下方有很大空间?

css - 使用 weex 和 vue 加载 sass 为每个组件提供 "Error: undefined:n1:n2: property missing ' :'"

css - Bootstrap 按钮不取消选择

javascript - 手动调整元素大小不会触发 Chrome 中的突变观察器

css - 为什么 iframe 默认是内联元素?