0

チェックボックスの背景を変更するための私のコード:

.question11 input[type=checkbox] + label {
    display: block;
    height: 16px;
    padding-left: 25px;
    background: url(images/bg.gif) top left no-repeat;
}

問題は、Internet Explorer 9.0.4 で動作しないことです。

4

4 に答える 4

3

CSS セレクターは IE には複雑すぎます。簡単な解決策は、HTML を変更できる場合、チェックボックスとラベルにクラスまたは ID を与えることです。

<input type="checkbox" class="foo"><label class="foo">...</label>

.question11 .foo {
  ...
}
于 2012-06-06T12:16:54.123 に答える
1

ルールは、どのチェックボックスにもプロパティを設定しません。これは特定のコンテキストの要素にのみ適用されlabel、IE9やその他のブラウザーではそのように機能します。

(私が推測するように)直後に要素が続くチェックボックス要素にルールを適用する場合labelは、別の種類のセレクターが必要になります。これは、CSSセレクターレベル4ドラフトには存在しないようです。サポートされているほどではありません。したがって、チェックボックスのクラス属性など、いくつかのマークアップを追加する必要があります。

于 2012-06-06T13:31:01.837 に答える