我正在构建一个可扩展的移动菜单图标,并且:after伪类无效。这是为了创建3条黑线来表示“汉堡包”菜单图标。创建第一行,第二行使用:before伪类创建,但是:after伪类不渲染,因此第三条黑线不会出现。
JS小提琴 - https://jsfiddle.net/eeks1swx/
我不完全确定为什么,我似乎无法弄明白。有什么想法吗?
.hamburger {
height: 15px;
width: 20px;
position: relative;
display: block;
cursor: pointer;
box-sizing: border-box;
}
.hamburger__line:before,
.hamburger__line:after,
.hamburger__line {
position: absolute;
height: 20%;
background-color: #000;
width: 100%;
border-left: 0;
border-right: 0;
top: 40%;
}
.hamburger__line:before,
.hamburger__Line:after {
content: "";
height: 100%;
}
.hamburger__line:before {
top: -200%;
}
.hamburger__line:after {
top: 200%;
}
<div class="hamburger">
<div class="hamburger__line"></div>
</div>
答案 0 :(得分:5)
.hamburger__line:before,
.hamburger__Line:after {
content: "";
height: 100%;
}
...你有一个大写的L - 类区分大小写。