将元素向右移动哪个更好?
使用通用.clearfix类:
.clearfix:after{
content:".";
display:block;
clear:both;
visibility:hidden;
line-height:0;
height:0;
}
您可以重复使用并将其应用于容器元素:
<div class="some-section clearfix">
<div class="align-left"> left </div>
<div class="align-right"> right </div>
</div>
<div class="some-other-section clearfix">
<div class="align-right"> right </div>
</div>
或特定的清算规则,如:
.some-section:after, some-other-section:after{
content:".";
display:block;
clear:both;
visibility:hidden;
line-height:0;
height:0;
}
答案 0 :(得分:1)
我个人更喜欢.clearfix,因为它拥有最多的浏览器支持 - IE6&amp; 7不支持:选择后。此外,您可以在一个位置定义清除属性,并在需要使用它们的任何位置添加该类。如果你继续使用:在每个元素的基础上,你将以大量重复的CSS结束。
答案 1 :(得分:1)
也不是,真的。 Internet Explorer 7及更早版本不支持伪元素,因此我使用的是:
.clearfix {
clear: both;
}
和
<br class="clearfix" />
它几乎是语义的,甚至可以在IE 6中运行,并且非常好用且干净。
答案 2 :(得分:1)
使用:after
时,必须考虑跨浏览器问题。如果我们要为所有浏览器提供支持,包括旧的浏览器,那么伪元素可能不是这样的:
CSS selectors and pseudo selectors browser compatibility
与通用类 vs 特定类
相关根据定义:
泛型类可以应用于标记中的任何元素,最适合与所有元素都支持的通用格式化指令一起使用,或者用于格式化需要在多种类型上使用的指令元素。
特定类仅通过应用于标记中的特定元素来实现其目的,最适合格式化仅针对一种元素类型的指令。
使用通用类而不是特定类的目标是: 等