###序文
ほとんど例外なく行われるフロントエンドの開発はあまりにもピットでのCSSのすべてのバージョンと互換性がありませんが、幸い私たちはこれらの問題を解決するためのCSSハック構文の多様性を発明し、神の偉大な先人があります。
これらは現在、CSSハックの使用状況を要約します。
### CSSハックの使用
####図1に示すように、単一のブラウザが対応していません
##### 1.1〜IE5
IE5では上記の、重大な問題が発生した互換性の問題を中心にDIV要素は、我々は、IE6以上、およびその他の近代的なブラウザでは、サポートは次のように中心に、それはDIV達成することができ、XHTML標準であることを知っています:
.demo {
幅:80%。
magin:0自動 ;
}
または:
.demo {
位置:相対。
magin:0自動 ;
}
どちらの方法は、標準属性の場合、左右の余白の原理の使用を達成するために、自動マージン等しい要素をデフォルトになります。
しかし、IE5は、その要素がページの中央に配置することはできませんつながるが、我々は達成するために、より昔ながらの方法を使用することができ、この機能をサポートしていませんHTML4.0標準を使用しています。
本体 {
テキスト整列:センター。
}
しかし、これは、すべてのページ要素の副作用は、デフォルトが中央に配置され、他の上のテキストの特性を継承しているかもしれません。幸い、IE6とIE5は今、我々はそれに彼らの原則かどうかを知ることができ、長い時間を、排除されています。
(!それが仕事に迅速にするために)、あなたは以下のメソッドを(IE6も変更し、IE6は別々のスタイルの削減を設定与える)を使用することができるかどうか、実際に使用する必要があります。
* HTMLの 本体{
テキスト整列:センター。}
##### 1.2- IE6
他のブラウザでは、あなたのCSSはIE6で、通常、しかし、正常でない場合は、他のブラウザのプレゼンテーションに影響を与えることなく、個別に定義されたIE6のスタイルの下で、次のメソッドを使用することができます。
最初:「 - 」プレフィックス法
.demo {
-width:100 PX ;
}
第二:(HTMLページに書かれ、1ページのみの用途に適したスタイル)HTMLのコメント法
<! - [IE 6の場合]>
<スタイル>
.demo {
幅:100pxに。
}
</スタイル>
<[endifの] - !>
##### -1,3- IE7(IE7のみ識別)
* + HTML .demo { 背景:緑; }
//或者:
* :最初の子 + HTML .demo { 背景:緑; }
##### 1.4 - firfox
@ -moz-文書 URLプレフィックス() {
.demo { 色:赤。
} }
##### 1.5 - クロム(実際にはWebKitのコアサポートすべてのブラウザ)
@ メディア画面及び(-webkit-MIN-デバイスピクセル比:0) {
#1 TEST1 {
色:赤。
}
}
#### 2、両方のブラウザは互換性がありません
##### 2.1-IE6 / IE7: "*" の接頭辞(通常モード、プロミスキャスモード、すべてのIEをサポートしている場合)
.demo {
* 色:赤。
}
##### 2.2-IE7 / IE8(セレクタ{プロパティ/ *** /:value9;})
.demo {
カラー/ *** /:red9。
}
3つの互換#### 3及び上記ブラウザ
##### 3.1 IE6を除くすべてのブラウザは:
HTML > 本体 .demo {
色:緑。
} //或者.demo {
カラー/ ** / 赤。
}
##### 3.2 IE8-9は、Firefox、Safariの、Opear
HTML > / ** / 本体 .demo
{
背景:赤。
}
##### 3.3 IE6 / IE7 / IE8 / IE9
.demo {
色:red9。
}
3.4 IE9より
:ルート .demo
{
色:赤。
}
#### 4.CSS3サポート
IE8のでIEの以前のバージョンIEフィルターを使用して、個々の特性があるものの、新しいCSS3プロパティをサポートしていないがほとんど(例えば、バックグラウンドサイズ)を達成し、まだ十分ではないことができます。だから、ページがロードされるときに、ブラウザの特定のバージョンのための所望の効果を達成するためにフランスに条件付きコメントを使用し、最善の方法ではJavaScriptによるものである、IEのIE8以前のバージョンでは、新しいCSS3プロパティをサポートしましょう。
オリジナル:大列 CSSブラウザの互換性の問題の概要