Windows Internet Explorer 8

IE8はこれまでMicrosoftが提供してきたIEシリーズの中でもっとも標準規約に準拠したものになっている。これまでIEの奇妙な振る舞いに頭を痛めてきたWebデベロッパやWebデザイナにとって未来へ向けた朗報となるものだが、これはすでにIE5、IE6、IE7を対象に調整されたWebコンテンツにとっては最悪の事態ということにもなりかねない。

こうした問題を避けるため、MicrosoftはIE8に3つのドキュメントモードを用意した。デフォルトでは標準機約に準拠したIE8標準モードで動作し、指定された内容や設定、ブラウザの置かれている状況に応じてドキュメントモードを変更する仕組みを採用。標準規約に準拠しつつ、過去の資産もそのまま活用できる方法になっている。

IE8設計時に留意した原則
1. デフォルトでは標準規約に準拠したレンダリングを実施する
2. IE7の標準レンダリングモードでベストになるように取り組むユーザもいるため、こうしたユーザにも配慮する
3. Webデベロッパによってレンダリングモードが制御できるようにする
4. WebデベロッパにIE8の標準レンダリングモードに移行するための時間とツールを提供する
ドキュメントモード 内容
IE8標準モード IE8のデフォルトモード。もっとも標準規約に準拠している
IE7標準モード IE7相当。ただしセキュリティ改善やアクセシビリティ向上のためまったく同じではない
Quirksモード IE5相当

How IE8 Determines Document Mode - IEBlogより抜粋

IE8標準モード以外のモードを使うには、HTTPレスポンスヘッダで指定する、DOCTYPEで指定する、metaタグで指定する、IE8で設定する、Microsoftの提供しているリストを利用する、などの方法がある。この仕組みがうまく動いているときはいいが、問題はこの自動切換が混乱を招くケースがあることだ。資料を読み直しても、どの設定が有効になってどのモードになるのかわからなくなる。

そこでIEBlogで公開されたHow IE8 Determines Document Modeの記事に注目したい。同記事にはIE8がどういった判定を実施してドキュメントモードを決定するのかがフローチャートにまとめられている。置かれている状況をフローチャートに当てはめていくと、自動的にどのドキュメントモードになるのかを判断できる。そのまま開発に利用できる便利なチャートだ。