目前认为清除CSS浮动元素的最佳方法是:
答案 0 :(得分:3)
这不是图形设计问题。这是一个CSS,因此属于StackOverflow。
也就是说,保持HTML清洁的答案只是给父母一个溢出。所以如果你的标记是:
<div class="wrapper">
<div style="float: left;"></div>
<div style="float: left;"></div>
</div>
你可以给包装器一个溢出:
.wrapper {overflow: auto}
现在.wrapper
将包含两个花车。
通常只需要这一切。
有时,在较旧的IE中,容器也需要宽度。
答案 1 :(得分:1)
你可以使这更复杂,但一个简单的方法是使用这个属性为你的CSS添加一个名为.clearfix的类:
.clearfix {clear: both;}
然后只需在要清除的内容下插入一个标记。
Google clearfix,用于定义标记的更现代方法。
答案 2 :(得分:0)
有点棘手,但它适用于现代浏览器:)
.wrapper::after {
content:"";
clear:both;
}
答案 3 :(得分:0)
我见过的最好的方法是使用:before&amp; :用于现代浏览器的伪元素和缩放:1用于旧版本的IE。
/* For modern browsers */
.cf:before,
.cf:after {
content:"";
display:table;
}
.cf:after {
clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
zoom:1;
}