IE8のレンダリングモードについて。
用意されたレンダリングモードは全部で3つ。
・IE8標準モード
・IE7標準準拠モード
・互換モード
2つ目までは、まんま。
「互換モード」はIE5系統と「互換」モード。(←IE7までもあった。)
3つもあるのか・・・。
IE9の話がそろそろ出てきているけど、
そのときはIE8互換モードというのができているのかな・・・。
制作者泣かせ。
(そういえば、8の次はIEシリーズをやめて、
C#で開発した新ブラウザになるなんていう話もありましたね)
ちがいはCSSのプロパティのサポート範囲だと思うのですが、
IE8については、リリースされたばっかなのでまだ特有の不具合とかあるかもしれないです。
(IE7のときは、SJISで書かれたサイトが真っ白になるという妙な不具合がありましたね。
最近は不具合の多いSJISでサイト作ることは少なくなったのでいいと思いますが。)
レンダリングモードの選択は、METAタグでやります。
DOCTYPE宣言で切替もできるみたいなんですが、
大体、レンダリングモードに関わらず同じDOCTYPE宣言すると思います。
(ちなみに、DOCTYPE宣言をつけないと勝手に互換モードになるので、
つけたほうがいいですね。)
で、書くMETAタグは、
<meta http-equiv="X-UA-Compatible" content="値" />
です。
「値」のところへ採用するレンダリングモードを書きます。
IE=8 | IE8レンダリングモード |
IE=7 | IE7レンダリングモード |
IE=5 | 互換モード。 |
IE=EmulateIE8 | DOCTYPE宣言に基づいて、 IE8モードか互換モードでレンダリング |
IE=EmulateIE7 | DOCTYPE宣言に基づいて、 IE7モードか互換モードでレンダリング |
「IE=8」や「IE=7」にすると、柔軟性がなくなってしまうので、
「IE=EmulateIE8」「IE=EmulateIE7」にするのが妥当でしょうか。
2009年6月現在では、
HTMLなら
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
XHTMLなら
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
あたりで、DOCTYPE宣言した上で、
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
としておいて方が無難かなと思います。
コメントを残す