11

我有两个单选按钮,我需要在点击时设置背景颜色。我的代码适用于除 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="female">
    <label for="f">female</label>
</form>

input:checked + label{
    background:red;
}

http://jsfiddle.net/chrimbus/sXjyL/3/

4

2 回答 2

12

虽然 IE8理解相邻的兄弟选择器,但它不理解checked伪元素,所以很遗憾,您不能仅使用 CSS 使您的代码对 IE8 友好。

查看SelectivizrIE7.js以获得 JavaScript 解决方案。

于 2013-07-25T22:30:49.917 回答
0

你可以试试这个:

input[checked=checked] + label{
    background:red;
}
于 2015-06-04T15:28:04.980 回答