
有名な方法なので知っている人がほとんどだとは思いますが、知らない人は覚えておくといいでしょう。
通常、IE8や7ではHTML5で登場した新しい要素(headerやsection等)を認識することは出来ませんが、「
html5shiv.js」というスクリプトを読み込むことで、各要素をしっかり認識してくれるようになります。
ただし、IE8以下には
HTML5の新要素に対してのデフォルトCSSが無いので、使う要素に「display: block;」を指定するなり「
normalize.css」を使うなりしたほうが良いですね。
html5shiv.js
ダウンロードしたファイルを解凍し、中にある「html5shiv.js」を適当なディレクトリに保存します。
次に、ページのhead内にスクリプトを読み込むための記述を追加します。
|
<!--[if lt IE 9]> <script src="js/html5shiv.js"></script> <![endif]--> |
これでIE8以下でもHTML5の新要素が認識されるようになります。
ちなみに[if lt IE 9]というのは
IE9以下のみという条件分岐です。この記述が無いとIE11やChromeで
無駄な読み込みが発生してしまいます。
さて、この「html5shiv.js」は非常に便利なんですが、わざわざ使う程でもないという意見もあるようです。
まぁ、たかが数KBといえども読み込みは発生するし、もともと対応していないものを無理矢理使っているのは少し気持ち悪い感じもします。実際、意味付けのためにHTML5を使いたいというだけなら、こんな感じの記述でもOKですからね。
|
<section> <div class="section"> Lorem ipsum dolor sit amet, consectetuer adipiscing. </div> </section> |
でも、いちいちこんな記述をするのも気持ち悪いし面倒です。どうせなら全部HTML5で書きたいというのが事実。使うかどうかはあなたの判断で…
関連するかもしれない記事