Html 如何获得css伪元素:在没有Javascript的情况下在IE8中工作?
我有两个单选按钮,我需要在单击时设置背景色。我的代码适用于除IE8之外的所有浏览器。这是否可能在不使用Javascript的情况下为IE8实现呢Html 如何获得css伪元素:在没有Javascript的情况下在IE8中工作?,html,forms,input,checked,Html,Forms,Input,Checked,我有两个单选按钮,我需要在单击时设置背景色。我的代码适用于除IE8之外的所有浏览器。这是否可能在不使用Javascript的情况下为IE8实现呢 <form> <input type="radio" id="m" name="gender" value="male"> <label for="m">male</label> <input type="radio" id="f" name="gender" value="
<form>
<input type="radio" id="m" name="gender" value="male">
<label for="m">male</label>
<input type="radio" id="f" name="gender" value="female">
<label for="f">female</label>
</form>
input:checked + label{
background:red;
}
男性的
女性的
输入:选中+标签{
背景:红色;
}
当IE8使用相邻同级选择器时,它会选中伪元素,因此,不幸的是,仅使用CSS无法使代码IE8友好
查看或查找JavaScript解决方案。您可以尝试以下方法:
input[checked=checked] + label{
background:red;
}
如果浏览器不支持CSS选择器,在这种情况下,除了:checked
,没有其他选择,那么恐怕答案是“否”。对于查找此主题的用户,请注意:在除IE8之外的所有浏览器中,您都可以使用CSS设置选中状态的样式,而无需使用JS。下面的答案描述了如何使用JS来支持IE8。如果页面加载时使用checked=“checked”的话,这是可行的。但请注意,取消选中输入不会改变其外观。