【发布时间】:2016-01-03 14:27:58
【问题描述】:
我想通过使用::after 将clear: both 添加到特定元素,我希望它是这样的。
.name {
width: 120px;
float: left;
}
.value {
width: 200px;
float: left;
}
.clear {
clear: both;
}
<div>
<div class="name">Name</div>
<div class="value">Value</div>
<div class="clear"></div>
<div class="name">Name</div>
<div class="value">Value</div>
<div class="clear"></div>
</div>
但是当我删除空的div 并将伪元素:after 添加到.value 时,它并没有像我预期的那样工作。
.name {
width: 120px;
float: left;
}
.value {
width: 200px;
float: left;
}
.value:after {
content: '';
display: block;
clear: both;
}
<div>
<div class="name">Name</div>
<div class="value">Value</div>
<div class="name">Name</div>
<div class="value">Value</div>
</div>
那么为什么它不起作用呢?
【问题讨论】:
-
@CoolGuy 我以前看过这个问题,我编辑了 .value:after 但我不工作。
-
这不是重复的,因为 OP 已经尝试过类似的方法并询问为什么它对他们不起作用。
-
您需要将
clear:both设置为父div `:before'。