0
我想补充::之前和::对于复选框after伪元素,但经过psudo没有显示,当我们选中该复选框项目伪元素不显示
以下CSS和HTML元素我用
.multiselect-container li input {
opacity: 0;
position: relative !important;
left: -4px;
top: 2px;
z-index: 999;
}
.multiselect-container li {
position: relative;
}
.multiselect-container li label {
padding: 4px 20px 3px 40px !important;
}
.multiselect-container li span::before {
width: 20px;
height: 20px;
border: 1px solid #ccc;
position: absolute;
content: '';
left: 12px;
top: 5px;
}
.multiselect-container li span::after {
width: 18px;
height: 18px;
background: #093c73 url(../images/tick.png) no-repeat 2px 2px;
position: absolute;
content: '';
left: 13px;
top: 6px;
display: none;
}
.multiselect-container li input[type="checkbox"]:checked + .multiselect-container li span::after {
display: block;
}
<ul class="multiselect-container">
<li>
<label class="checkbox">
<input type="checkbox" value="option1">Option1</label>
<span></span>
</li>
</ul>
你的最后一个选择是错误的。您试图选择一个匹配选择器'.multiselect-container li span'的元素,表示选中的输入字段的后面的兄弟节点 - 但当然没有这样的元素。 – CBroe