web-dev-qa-db-ja.com

JavaScriptなしでIE8で動作するようにcss疑似要素:checkedを取得するにはどうすればよいですか?

2つのラジオボタンがあります。クリック時に背景色を設定する必要があります。私のコードは、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/

11
nthChild

IE8 理解 隣接する兄弟セレクターですが、 理解していませんchecked疑似要素なので、残念ながら、コードをIE8-にすることはできません。 CSSのみを使用することでフレンドリー。

JavaScriptソリューションについては Selectivizr または IE7.js をご覧ください。

12
Renato

あなたはこれを試すことができます:

input[checked=checked] + label{
    background:red;
}
1
Janrider