1

我有两个position属性设置为absolute. 其中一个是另一个可滚动 div 的儿子。像这样的东西:

<body>
  <div class="foo" id="outside"></div>

  <div class="bar">
    <div class="foo" id="inside"></div>
  </div>
</body>

在 CSS 中:

.foo{position:absolute;}
.bar{max-width: 300px;}

现在,假设bardiv 的内容很长,因此用户可以滚动它(只是 div,而不是整个页面!);insidediv 不会与他的父亲一起滚动。相反,如果outsidediv 足够长可以滚动,它会随着整个页面滚动。我想让insidediv 随 div 一起滚动bar,如何在outsidediv 上重现 div 的行为inside

编辑:我再次阅读了我的帖子,它不是那么简单,对不起。我将尝试一个例子:

http://jsfiddle.net/QYHSd/2/

当用户滚动绿色 div 时,我希望红色 div 与绿色的内容一起滚动。如果我不能很好地解释我想要获得什么,再次抱歉。

4

2 回答 2

6

添加position: relative;.bar. 这将改变绝对定位的上下文.foofrombody.bar

.bar {
    position: relative;
    max-width: 300px;
    height: 100px;
    overflow-y:scroll;
    overflow-x:hidden;
}

jsFiddled here

于 2013-09-03T18:40:16.507 回答
0
.bar {
max-width: 300px;
max-height: 300px;
overflow-y:scroll;
overflow-x:hidden;
}

这将使得即使 div 中没有内容也始终可见滚动条。如果您希望滚动条仅在需要时显示,请使用“auto”而不是“scroll”。

于 2013-09-02T16:14:49.033 回答