真的很烦我,但为什么Chrome不显示:after伪选择器?我以前没有注意到这一点。它也很简单。它也显示在所有其他浏览器中!
我在Bootstrap网站上注意到了,他们的表单显示了DOM中的:after
选择器。奇怪的...
请查看我制作的代码段。如果你在浏览器中检查DOM,它也在这里做。 -
.form-horizontal .form-group {
margin-bottom: 10px;
}
.form-horizontal .form-group:before {
display: table;
content: " ";
}
.form-horizontal .form-group:after {
clear: both;
}
<div class="form-horizontal">
<div class="form-group">
<label>First Name *</label>
<input id="txtCustodianFName" type="text" class="form-control" placeholder="First Name" />
</div>
<div class="form-group">
<label>Last Name *</label>
<input id="txtCustodianLName" type="text" class="form-control" placeholder="Last Name">
</div>
</div>
答案 0 :(得分:10)
content
和:before
伪选择器需要:after
属性。如果未包含,则对元素没有影响。如果您使用选择器来执行clearfix,或者您实际上不想要任何内容的其他情况,您只需将content
属性留空content:'';
就像您已经完成的那样对于:before
选择器。你的CSS应该是这样的:
.form-horizontal .form-group:after {
content: '';
clear: both;
}
Learning To Use The :before And :after Pseudo-Elements In CSS