鉴于以下场景,为什么:after
选择器需要内容属性才能起作用?
.test {
width: 20px;
height: 20px;
background: blue;
position:relative;
}
.test:after {
width: 20px;
height: 20px;
background: red;
display: block;
position: absolute;
top: 0px;
left: 20px;
}
<div class="test"></div>
请注意,在指定 content 属性之前,您是看不到伪元素的:
.test {
width: 20px;
height: 20px;
background: blue;
position:relative;
}
.test:after {
width: 20px;
height: 20px;
background: red;
display: block;
position: absolute;
top: 0px;
left: 20px;
content:"hi";
}
<div class="test"></div>
为什么这是预期的功能?您会认为显示块会强制元素显示。奇怪的是,您实际上可以在 Web 调试器中看到样式;但是,它们不会显示在页面上。