Nexus 9
PS4
Intuos Pro
Core i7-4790K
ページの先頭へ
トップに戻る
2014年12月4日 Web制作

HTML5から登場した新しいタグをIE8以下に認識させる方法


html5ie 有名な方法なので知っている人がほとんどだとは思いますが、知らない人は覚えておくといいでしょう。
通常、IE8や7ではHTML5で登場した新しい要素(headerやsection等)を認識することは出来ませんが、「html5shiv.js」というスクリプトを読み込むことで、各要素をしっかり認識してくれるようになります。

ただし、IE8以下にはHTML5の新要素に対してのデフォルトCSSが無いので、使う要素に「display: block;」を指定するなり「normalize.css」を使うなりしたほうが良いですね。

html5shiv.js

ダウンロードしたファイルを解凍し、中にある「html5shiv.js」を適当なディレクトリに保存します。

次に、ページのhead内にスクリプトを読み込むための記述を追加します。 これでIE8以下でもHTML5の新要素が認識されるようになります。

ちなみに[if lt IE 9]というのはIE9以下のみという条件分岐です。この記述が無いとIE11やChromeで無駄な読み込みが発生してしまいます。

さて、この「html5shiv.js」は非常に便利なんですが、わざわざ使う程でもないという意見もあるようです。 まぁ、たかが数KBといえども読み込みは発生するし、もともと対応していないものを無理矢理使っているのは少し気持ち悪い感じもします。実際、意味付けのためにHTML5を使いたいというだけなら、こんな感じの記述でもOKですからね。
でも、いちいちこんな記述をするのも気持ち悪いし面倒です。どうせなら全部HTML5で書きたいというのが事実。使うかどうかはあなたの判断で…
関連するかもしれない記事