我已经使用以下HTML创建了一个复选框:
<div class="chkbox">
<input id="accept-filter" type="checkbox" class="filter-handler" checked="">
<label for="accept-filter">
::before
<span class="label-txt">I accept the terms</span>
</label>
</div>
我想设置::before
伪元素的样式,但只有在选中复选框时才会这样做.
我已经使用:has
Select 器成功地做到了这一点:
.chkbox:has(.filter-handler:checked) label::before
然而,这在Firefox(it seems the :has
selector isn't supported)中不起作用.
我希望有一种方法可以通过使用+
sibling Select 器来实现这一点,但以下方法似乎不起作用(jsfiddle):
.filter-handler:checked + label::before
有办法做到这一点吗?