7

我有一个与CSS Auto Margin 向下推其他元素类似的问题:右侧浮动侧边栏被推到主要非浮动内容 div 下方。建议的答案有效:只需颠倒标记的顺序并在非浮动 div之前写出浮动 div。

例如,这个:

<div class="container">
    <div id="non-floating-content">
        fooburg content
    </div>
    <div id="float-right">
        test right
    </div>
</div>

需要笨拙地重新排序为:

<div class="container">
    <div id="float-right">
        test right
    </div>
    <div id="non-floating-content">
        fooburg content
    </div>
</div>

那么,为什么这在不重新排序的情况下也可以工作:使用基于网格的设计具有最大宽度和最小宽度的弹性布局?查看现场演示。标记的顺序仍然是明智的:浮动 div 写非浮动 div 之后。然而浮动并没有被推到页面上。

我问是因为我不想为了正确设置样式而不得不破解主题 PHP(重新排序 div)。

其他帖子也说解决方案是“重新排序你的 div”:

4

2 回答 2

3

之所以有效,是因为您的包含元素没有高度。当您在包含元素中只有浮动元素时,它将折叠到 0 高度。例如,如果您要添加溢出:隐藏;到#fluidColumnContainer,它将充当清除修复,扩展容器以包含浮动元素。然后你会看到右浮动元素再次下拉。

于 2011-07-06T03:35:51.707 回答
0

您链接的原因是因为其他列也浮动

于 2011-07-06T03:11:08.227 回答