IE には ! important の認識にバグがあり、現在、ほとんどの Web 標準設計者はこのバグを利用して IE と FF との互換性を保っていますが、IE 7.0 ではこのバグが修正されているため、どうすれば IE と互換性を持たせるかという問題が再び発生しました。 IE.7.0 同時に、ie6.0 や ff と互換性がありますか? 「上からの政策と下からの対策がある」という言葉通り、海外の Web ページ標準デザイナーは CSS フィルター (CSS Hack ではありません) を使用しています。 ie7.0、ie6.0、ff と互換性があります。以下は海外の Web サイトからの私の翻訳です。
次のように新しい CSS スタイルを作成します。
#item {
width: 200px;
height: 200px;
background :; ここに lang 属性 (中国語では zh) を追加します:
div 要素:
*:lang(en) #item{
background:green ! important;
}
これは、元の CSS スタイルを ! important で上書きするために行われます。 :lang セレクター ie7.0 はサポートしていないため、この文は Any 効果として使用されません。そのため、ie6.0 では同じ効果が得られますが、残念ながら Safari はこの属性をサポートしていないため、次の CSS スタイルを使用する必要があります。
#item:empty {
背景: green ! important
}
: 空のセレクターは css3 仕様ですが、Safari はこれをサポートしていません。仕様では、この要素が存在するかどうかに関係なく、この要素は引き続き選択されます。これは緑色になります。IE バージョン以外のブラウザでも動作し、次のブラウザとオペレーティング システムでテストに合格します:
ie7 beta 2 プレビュー/勝利
ie5.01+/勝利
firefox 1.5/勝利
opera 8.5/勝利 & linux
netscape 7.01, 8/勝利
mozilla 1.7.12/勝利 & linux
safari 2/mac
firefox 1.0.4/linux
epiphany 1.4.8/linux
galeon 1.3.20/linux
作者によると、これは実際にはハッキングではなく、フィルターである必要がありますが、これは最も重要ではないようです。この方法を通じて、IE6.0、IE7.0、および他のブラウザーとその方法の間の互換性の問題が再び解決されたためです。 lang-filter の使用は将来的に役立つでしょう。