TLDR:如何让容器包装多个叠加的流体高度 div?
我有一个包含一些对象的 div:
<div class="container">
<div class="a" style="height: 300px;">Tab page a</div>
<div class="b" style="height: 100px; display: none;">Tab page b</div>
<div class="c" style="height: 200px; display: none;">Tab page c</div>
...
</div>
基于用户操作,我想淡入淡出(b
即a
交叉淡入淡出)。这要求它们都与 的左上角对齐container
。通常,我只会使用position: absolute;
默认值top: 0;
并left: 0;
叠加它们。这样做的问题是,然后容器折叠到 0px 高(而不是我想要的内容的高度),a
并且b
已经从流中删除。
好的,所以我不能在a
and上使用绝对定位b
。我还能如何让它们重叠?否定margin-top
也行不通,因为我不知道孩子的身高(他们可以根据他们的内容动态变化),并且可能有任意数量的孩子。
如果没有 JS,这甚至可能吗?如果不是,那么不假设 A)少数孩子container
或 B)孩子的大小是固定的(提前或以其他方式知道)的最简单的方法是什么。