我有一个两列布局,由固定宽度的浮动 div 组成。第一列内部是一个超宽元素。所以 html 布局看起来像这样:
<div id="container">
<div id="column1">
...short content...
<div id="extra-wide">
...wide content...
</div>
</div>
<div id="column2">
...long content...
</div>
</div>
如注释所示,第一列包含少量内容,第二列包含大量内容。CSS 看起来像这样:
#column1 { width: 200px; }
#column2 { width: 100px; }
#extra-wide { width: 250px; }
所以超宽元素实际上比它的父元素 column1 更宽。而且我不提前知道任何元素的高度——它们都是可变的。
这里的问题是 column2 似乎与 column1 中的超宽元素重叠。这是一个 jsfiddle 来帮助可视化这一点:http: //jsfiddle.net/e3KNg/(这个小提琴插入了一些内容并添加了颜色以使发生的事情更加清晰)。这是一个屏幕截图:
在不改变基本 HTML 结构或三个元素的宽度的情况下,是否可以(在没有 Javascript 的帮助下)强制 column1 中的超宽元素出现在 column2 下方?这是我想要达到的效果:
我知道这可以通过重新排列 html 元素或使用 Javascript 来完成,但我正在寻找上述限制范围内的解决方案。我尝试在各个地方使用清除div,移除或调整浮动,并尝试一些溢出设置,但无法达到我想要的效果。