すべてのブラウザー用に開発し、IEの互換性を求めて戦うことは、すべてのWeb開発プロセスでよく知られているステップです。
Webインテグレーターではないので、IEに含めるのに適した一般的な互換性スタイルシートを知っていますか(私の場合、私はIE7についてのみ懸念していますが、すべてのバージョンで質問を開きます)
すべてのブラウザー用に開発し、IEの互換性を求めて戦うことは、すべてのWeb開発プロセスでよく知られているステップです。
Webインテグレーターではないので、IEに含めるのに適した一般的な互換性スタイルシートを知っていますか(私の場合、私はIE7についてのみ懸念していますが、すべてのバージョンで質問を開きます)
normalize.cssは、多くのクロスブラウザーの問題に対処する優れたリセットです。 http://necolas.github.com/normalize.css/
既製のコンポーネントが必要な場合は、TwitterBootstrapが適しています。IEと互換性があります。Bootstrapを使用することにした場合、そのリセットは実際にはnormalize.cssから適応されます(したがって、両方は必要ありません)
HTML5ボイラープレートは、ゼロから始める場合のベストプラクティスのマークアップにも役立つ場合があります: https ://github.com/h5bp/html5-boilerplate
特に、HTML5BP条件付きコメントを使用して、次のような特定のIEバージョンをターゲットにすることをお勧めします。
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
つまり、CSSでは、クラスに関するIEバージョン固有の問題に対処できます。
.lt-ie8 .awesome-component { ... }
最後に、CSS3PIEのようなjavascriptポリフィルを使用することをお勧めします。私の経験では、それらは価値があるよりも多くの面倒を引き起こし、不要なマークアップを追加します。
グレースフルデグラデーション/プログレッシブエンハンスメントについて少し学びましょう。
別の回答では、IE7.jsについて言及しましたが、それがどれほど有用であるかは思い出せませんが、問題ないと思います。IE <= 8のArray.indexOfなどの欠落しているJS関数(jsを使用している場合)をシムする必要があります 。https ://github.com/kriskowal/にあるこのECMAScript5シムを見つけました。 es5-shim
私は通常、Eric MeyerのCSSリセット(http://meyerweb.com/eric/tools/css/reset/)を使用します。これは、簡単な出発点として適しています。
また、JavaScriptを使用してさまざまなバージョンのIEの動作を改善するie7js(http://code.google.com/p/ie7-js/)の使用を検討することもできます。