Web サイトを構築していて、IE 8 のサポートが必要です。HTML5 セマンティック要素 (メイン、セクション、記事、ナビゲーション、ヘッダー、フッター) を使用しています。
これらは IE 8 では機能しないことがわかっているので、html5shiv を含めました。そして、すべての要素を としてスタイルしましdisplay: block;
た。
私のレイアウトは IE 8 ではまだ混乱していたので、すべてのセマンティック要素にクラスを追加し、それらのクラスを使用して CSS で要素のスタイルを設定しました。
これでレイアウトは正しくなり、html5shiv はもう必要ないようです。
これは可能ですか?html5shiv を使用せずに、クラスを使用してセマンティック要素のスタイルを設定できますか? もしそうなら、なぜhtml5shivを使うのですか?
nav {color: red}
動作しませんが、
<nav class="nav">
.nav {color: red}
html5shiv がなくても動作するようです。誰かがこれを確認できますか?
編集:いくつかの慎重なテストの後、次のことがわかりました。
ページに SVG 要素がある場合 (IE 8 ではレンダリングされません)、セマンティック要素は html5shiv を使用せずにクラスでスタイル設定できます。これは非常に奇妙で、おそらく IE 8 の何らかのバグです。