私のようなCSSファイルがあります:私は、TDにクラスのショーを追加するとIE6/7 CSSクラスのオーバーライド
#SomeTable.hideAll td { display: none; }
#SomeTable.showXYZ .show { display: block }
を、ディスプレイには、クロム、FF、およびIE8にブロックすることが優先されます。しかし、IE6/7では、オーバーライドされていないような表示は残っていません。このようなCSSのオーバーライドを行うために古いIEで行う必要がある何か奇妙なことはありますか?私はそれが可能ではないか、それとも何かと関係があると思っています。あるいは、オーバーライドを決定するためのルールを理解できません。
EDIT:CSSルールは、CSSがまだ更新されません
.hide { display: none; }
#SomeTable.showXYZ td { display: block }
のように見える場合でも。これは特別なことではありませんが、IE6/7のバグでなければなりません。
これは 'td'固有のものです。しかし、2日前によく似た質問をしませんでしたか? –
td特定のことを精緻化する。先日、私はcssに関する質問をしましたが、それがどう関係しているのかわかりません。 –
http://htmldog.com/guides/cssadvanced/specificity/ CSSの特異性はちょっと混乱することがあります。クラスが単純な要素よりも具体的であるため、.showはtdをオーバーライドする必要があるため、IE6/IE7のCSSの特殊性のバグのように聞こえます。うまくいけば、polarblauの答えがそこに来るでしょう。 –