这是一个基本的例子。我想我已经正确理解了您的要求。这个例子让它们看起来是堆叠的,但在 HTML 中它们实际上并没有堆叠,它们是嵌套的。我不确定你是否可以在你的解决方案中允许它,但手指交叉。
示例:http: //jsfiddle.net/jyR2A/1/
CSS:
#divA {overflow-y:scroll;position:absolute;height:100%;top:-100%;background:green;width:100%;}
#divB {position:absolute;bottom:0;background:blue;width:100%;color:white;}
HTML:
<div id="divB">
<!-- Div A is nested so we can use divB's height -->
<div id="divA">
</div>
<!-- Div B content -->
<div id="divBinnerContent">
Line 1 <br />
Line 2 <br />
..Keep adding more lines to test how it works <br />
</div>
</div>
这个怎么运作:
divB 是定义 divA 高度的父元素。因此,如果我们将 divB 的位置设置为相对或绝对,并将 divA 放置在其中,那么我们可以将 divA 的高度设置为 100%,以赋予其父元素 divB 的高度。
现在要定位 divA,我们确保它具有 position:absolute 并设置 top:-100%,这会将其向上移动与其容器 divB 的高度相同的距离。绝对位置不仅允许我们正确定位它,而且还消除了它影响其父级 divB 的高度。
divB 的内容我已经为它制作了一个很好的容器,但这不是必需的。只需将它放在 divB 内的任何位置(但不在 divA 内)就可以了。
您可以像我一样使用内容来定义高度,也可以使用 CSS 中设置的绝对高度。
希望这就是你所追求的。
勒罗伊