0

スライドドアのボタンcssがいくつかあります。ボタンタグと2つの内側のスパンを使用しています。

通常のボタンの背景画像を指定するためにこれを持っています。

button span {
 background: url(button_right.png) no-repeat top right;
}

これはデフォルトのボタンの色です。次に、「灰色」ボタンがあります(ボタンに「灰色」のクラスを指定します)。

button.gray span {
 background: url(button_right_gray.png) no-repeat top right;
}

何らかの理由で..IE(8)はこれを嫌い、元の画像を背景として保持している灰色のcssを無視します。ただし、次の「ホバー」cssはIEでは機能します。

button.gray:hover span span {
      color: #6c6c6c;
      background-position: left -29px;
  }

「button.grayspan」は「buttonspan」よりも特異性が高いと思いました(他のすべてのブラウザでそうです)。

編集:わかりました、それで私は問題を発見しました。私のCSS宣言では、次のようになりました

button.gray span,
  button:disabled span {
background: url(button_right.png) no-repeat top right;
}

button:disabled spanを宣言リストから削除すると、機能します。

4

4 に答える 4

2

IEは疑似クラスセレクターをサポートしていません:disabledIEの動作は、無効または認識されないセレクター(実際には仕様に沿っている-そもそもサポート:disabledされていない場合でも!)に遭遇したときにルール全体をスキップすることです。

于 2010-08-05T14:39:34.653 に答える
0

それに!importantを追加してみましたか?すなわち

    button.gray span {
      background: url(button_right_gray.png) no-repeat top right !important;
    }
于 2010-08-05T11:24:01.313 に答える
0

画像自体を見てみましたか?画像の代わりに色を使用すると、ie8は.grayクラスを正常に表示するようです。

http://screencast.com/t/YzA4MGEx

于 2010-08-05T12:10:54.217 に答える
0

私の編集によると;

さて、私は問題を発見しました。私のCSS宣言では、次のようになりました

button.gray span、button:disabled span {background:url(button_right.png)no-repeat右上; }

button:disabled spanを宣言リストから削除すると、機能します。宣言全体のリッスンを完全に停止するため、button:disabledに関するIEの問題は何ですか?

于 2010-08-05T13:42:30.230 に答える