このようにWebブラウザで最大シェアを誇るIE8だが、その“受け”は必ずしもよくないようだ。例えばGoogle検索を行うと、下記のようなキーワードがすぐに出てくるあたり、よほど開発者や利用者のストレスの原因になっていることがうかがえる。
「The Internet Explorer 8 Countdown」という独立系開発者が立ち上げたサイトがあり、ここでは「IE8の世界シェアが1%を切るまでカウントダウンする」ことを目的にしていると記されている。なお、このサイトは前述したMicrosoftのIE6撲滅サイトが立ち上がる数週間前にスタートしたもので、同社がそれを参考にした……という話もあったりする。
実際、IE8自体が5年前のWebブラウザであり、技術的にも時代遅れとなりつつあることは否めない。互換性以前にパフォーマンス面でも現在では低速の部類に入り、Webアプリケーションの動作で重要なJavaScriptの実行速度では現行の最新ブラウザとの比較で10倍以上の開きがある。IE9以降に導入されたハードウェアアクセラレーション機能にも未対応で、最新ハードウェアの恩恵をほとんど受けられない点もマイナス要因だ。
とはいえ、Windows XPユーザーが減少して代替ブラウザの選択肢も用意されるなか、あえて「遅くて」「Web標準対応にまだ問題を抱える」IE8を使い続けるには相応の理由があるのだろう。
Microsoftをはじめとする関係者は、その理由を「企業向けに構築されたWebアプリケーション」にあると考えている。古くはホストコンピュータからクライアント/サーバまで、レガシーシステムと呼ばれる形で蓄積されてきたシステムを、Web技術をベースにしたカスタムアプリケーションの形で運用している企業は多い。企業システムは更新サイクルや追加コストの問題もあり、すぐの移行が難しいため、たとえ「旧バージョンのIEでしかうまく動作しない」アプリケーションであっても使い続けることになる。
そこで登場するのがIE11の「エンタープライズモード(Enterprise Mode)」だ。IE8の動作を可能な限り忠実に再現するよう設計され、こうしたIE8以前を想定したWebアプリケーションであってもIE11上で動作を可能にする。
注意点としては、別にIE11上でIE8が動作したり、バイナリレベルで同じコードをレンダリングに用いているわけではないため、あくまで「可能な限り忠実に行うエミュレータ」という位置付けになっていることだ。
エンタープライズモードを適用するサイトは(イントラネットを含む)、あらかじめ企業のネットワーク管理者がグループポリシーの形で社内クライアントに対して一括指定できるようになっており、該当するサイトへのアクセスに対しては「エンタープライズモード」、それ以外についてはIE11のネイティブ動作モードである「エッジモード(Edge Mode)」が選択されるようになる。
モード変更の際にはIE11上にポップアップが出現し、アドレスバーのアイコンが“ビル”のマークに変化することで分かるようになっているが、一般ユーザーは特に意識することなく利用できる(逆にポリシーが設定されている場合はユーザーがモード変更に介入できない)。この辺りの詳細はMSDNのBlogにも記述があるので、興味ある方は参照してほしい(英文の参考文書)。
従来のIEでは、それ以前のバージョンのIE向けに記述されたページを再現するため、ページ中に「X-UA-Compatible」というメタタグを埋め込むことでページをレンダリング処理するIEバージョンを明示的に指定し、後方互換性を維持する仕組みが用意されていた。バージョン11までのIEでは、この方式で過去に記述されたページとの互換性を取っており、この手法は「ドキュメントモード(Document Mode)」と呼ばれている。
ただしMicrosoftによれば、この手法はレガシーであるとしてIE11より後のバージョンではサポート対象外になることを警告しており、今後はIE10/11以降のブラウザに対応したよりモダンな方式を採用するよう訴えている。
ここで疑問がわくのが、「なぜ互換性対応の排除を目指していたMicrosoftが、Windows 8.1 Updateで突如エンタープライズモードを採用したのか?」「エンタープライズモードとドキュメントモードの違いは?」の2点だ。
前者については本稿最後の結論にまわすとして、後者について簡単にまとめたい。筆者もこの違いが分からずいろいろ調べていたところ、Stack Overflowに明確な回答を見つけた。
それによれば、サイトの互換性に関する多くの問題は「X-UA-Compatible」を使ったドキュメントモードで対応可能なのに対し、残りの問題として「CSS Expressions」や「ActiveX」まわりでドキュメントモードだけでは対応できないケースが存在するという話だ。特にCSS ExpressionsはIE5以降に採用され、IE8でサポートが終了したため、こうしたIE8以前の環境をある程度忠実に再現するために「IE8エミュレーション」のような仕組みが必要となり、それが「エンタープライズモード」となった。
エンタープライズモードは動作の忠実性が高いため、以前に比べても少ない検証の手間でそのまま従来のクライアント環境をIE10/11以降のブラウザしか搭載しないWindows 8/8.1に持ち込めるため、スムーズな移行を実現できるというわけだ。
Copyright © ITmedia, Inc. All Rights Reserved.