互換表示機能の紹介

更新日: 2008 年 8 月 27 日


本記事は、Internet Explorer 開発チーム ブログ (英語) の翻訳記事です。本記事に含まれる情報は、Internet Explorer 開発チームブログ (英語) が作成された時点の内容であり、製品の仕様や動作内容を保証するものではありません。本記事に含まれる情報の利用については、使用条件をご参照ください。また、本記事掲載時点で、Internet Explorer 開発チーム ブログ (英語) の内容が変更されている場合があります。最新情報については、Internet Explorer 開発チームブログ (英語) をご参照ください。

翻訳元 : Introducing Compatibility View (英語)



Internet Explorer 8 の計画を開始した際、 Web サイトの互換性を維持することを公約としました。この公約は依然として有効であり、 Microsoft の相互運用性に関する方針とも一致するうえ、我々の声明 (英語) にも短期的な影響を与えていることは注目に値します。言い換えれば、 Internet Explorer 8 の新機能の最も重要なものは互換性の確保であり、またそれを維持することです。

Beta 2 では互換表示と呼ばれる新機能を搭載することを発表しました。互換表示は、要するに以前のバージョン用にデザインされたサイトを Internet Explorer 8 が適切に表示する機能です。

互換表示とエンドユーザー

Web サイトが最新の Web 標準をサポートしていると宣言した場合、Intenret Exporer 8 はその宣言を尊重し、最も標準に準拠したメカニズムを使用してこのサイトを表示します。ほとんどの場合、これで問題ありません。しかし、稀に「最新の標準を使用し、表示してください」という宣言が本当は「Internet Explorer 7 の最新の標準で表示してください」 を意味することがあります。ここで互換表示の出番です。

描画エンジンには様々な変更が加えられましたが、知っておくべきなのは下記の点です。

  • 一般のインターネット サイトは IE8 標準モードで表示されます。
  • 互換表示機能の切り替え (IE7 標準モードと IE8 標準モード) は、再起動なしで即時に実行されます。
  • 互換表示機能はドメイン単位で機能します。

互換表示をコントロールする新しいユーザー インターフェイスとなるボタンはナビゲーション バーの中のアドレス バーの右側 (更新ボタンの隣) に配置され、 Beta 1 の Emulate IE7 ボタンと置き換えられました。

標準モードでの表示中などのように、互換表示に切り替えることでよりよい結果が得られる場合にだけ、Internet Explorer はこのボタンを表示します。Quirks モード、もしくはイントラネット サイトの表示中 (後で取り上げますが、これらの場合は既に互換表示モードで表示されています) 、Internet Explorer はボタンを隠します。

コンピューターの処理速度によっては、互換表示ボタンを選択後、画面の再読み込みが確認できるかもしれません。いずれにせよ、バルーン チップが表示され、現在互換表示モードで動作中であることを知らせます。加えて、バルーン チップが消えた後も、互換表示のアイコンが「押された」状態になるので、互換表示で動作中であることを確認できます。

エミュレーションの「効果範囲」はボタンを押した現在表示中のドメインに限定され、実行中の他のプロセスやタブには及びません。そして、Internet Explorer はローカルのリストにこのドメイン名を保持するので、同じサイトを訪れた場合、再度ボタンを押す必要はありません。

互換表示とエンタープライズ

現在、大多数の企業向け Web アプリケーションは Internet Explorer 7 の利用を前提にしています。互換性を維持するため、Internet Explorer 8 はゾーン判定に基づく賢明な初期値を設定して出荷されます。初期値では、インターネットのすべてのサイトは Internet Explorer 8 標準モード (互換表示無効) で表示され、イントラネットのすべての Web サイトは Internet Explorer 7 標準モード (互換表示有効) で表示されます。

幾つかの例をご覧ください。

jp.msn.comhome.live.com のようなインターネット上のサイトを表示する場合、互換表示は初期値にて無効になります。Internet Explorer 8 は自分の UserAgent 文字列を "8" 、内部バージョンを "8" であると認識して、標準の描画モードを Intenret Explorer 8 標準モードに切り替えて、 Web ページを表示します。http://192.168.0. 1 といった IP アドレスによる指定の場合も同様です。Internet Explorer が IP アドレスを内部アドレスか、外部アドレスか見分けられない場合は、後者と仮定して動作します。互換表示による Web サイトの問題修正は、以前の Emulate IE7 ボタンを利用したものと同等のものです。

もし http://myPortal や https://sharepoint/sites/mySite といったローカル イントラネットのサイトに移動した場合、 Internet Explorer は自身の UserAgent を "7" 、内部バージョンを "7" だと認識し、標準の描画モードを Internet Explorer 7 標準モードに切り替えて、Web ページを表示します。この組み合わせは、Internet Explorer 7 で正常に表示されていたページを、 Internet Explorer 8 でも引き続き利用することを可能にします。

完全を期すのであれば、C:\Temp\MyWebPage.htm といったローカル ページは Internet Explorer 8 標準モード (互換表示無効) で表示する点に注意する必要があります。

[ツール] メニューに新しく追加された項目はこの機能の詳細な設定を可能にします。

すべてのイントラネット サイトを Internet Explorer 8 標準モードで表示するように設定することができます。すべてのサイトを Internet Explorer 7 標準モードで表示する (Emulate IE7 ボタンが押された状態の Internet Explorer 8 beta 1 と同じ動作) ようにポリシーを設定することもできます。さらに常に互換表示モードで表示させる必要のあるサイトを事前に登録することや、互換表示ボタンを押して登録したリストを編集することもできます。Internet Explorer 8 の UserAgent ストリングを不正なものとしてブロックし、Quirks モードで表示するページに遭遇した場合、現在表示している問題のサイトを追加する本機能は特に便利です。

これらの新機能のすべてがグループ ポリシーで様々なボタンとスイッチを操作することでより細かく設定することが可能です。ほとんどの設定は IEAK を利用して構成することもできます。

互換表示と Web 開発者

最新の Web 標準に準拠し、DOCTYPE 宣言によって、明示的にレイアウト モードを指定したページを作成した場合、Internet Explorer は予想通り、Quirks な DOCTYPE は Quirks モードに、標準的な DOCTYPE は Internet Explorer 8 標準モードに関連付けします。 Beta 1 のときは、<META> タグかHTTP ヘッダー (英語) で、Internet Explorer 8 標準モードをオプトアウトすることができました。

利用者が Web サイトを最高の状態で表示・利用でき、互換表示モードを利用しなくてよいようにするために最も適切な方法は、Internet Explorer 8 によるテストを行い、必要に応じて Web サイトを更新ことです。利用者がサイトを表示するために互換表示モードを選択している場合、適切な <META> タグか HTTP ヘッダーを利用して、望ましいレイアウト モードに "引き戻す" ことができます。新しい content 値である "IE=EmulateIE8" は利用可能な値のリストを完全にし、この特別な目的に役立ちます。

Content の設定値 概要
IE=EmulateIE8 標準的な DOCTYPE の場合、Internet Explorer 8 標準モードで表示します。クァークスな DOCTYPE の場合、Quirks モードで表示します。このタグを使うと、クライアントの互換表示モードの設定を無効にし、標準的な DOCTYPE は強制的に IE8 標準モードで表示します。

この <META> タグ、もしくは HTTP ヘッダーが存在する場合、このサイトは Internet Explorer 8 をサポートするために更新されているとみなされ、この値がこれ以外のクライアントで設定されている互換表示モードより優先されます。 <META> タグ、もしくは HTTP ヘッダーには他の効果もあります。そのひとつは、この設定はユーザーが長期にわたり保存している互換表示の Web サイトのリストを一掃するトリガーになり、結果的にこの <META> タグや HTTP ヘッダーをそのままにしておく必要がなくなることです (ちなみに履歴情報を削除しても、互換表示のためのリストは削除されます) 。もうひとつは、 <META> タグ、もしくは HTTP ヘッダーが存在する場合、コマンド バーの互換表示ボタンが表示されなくなるため、ほとんどのユーザーが互換表示リストにサイトを追加することを効果的に抑止できます。

User Agent に含まれる新しいタグは互換表示モードを利用しているクライアントの特定を可能にします。Internet Explorer 8 標準モードのタグも存在します。

  • 互換表示モード :
    User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SLCC1; Media Center PC 5.0; .NET CLR 3.5.21022)
  • 最新のInternet Explorer 8 のUA String:
    User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; Media Center PC 5.0; .NET CLR 3.5.21022)

最後に、この機能に対応した開発者ツールのアップデートも完了しました。[ブラウザーモード] メニューでは、サーバーや Web サイトから指定される動作モードに関わらず、 Internet Explorer の動作を変更することができます。この機能を使えば、Internet Explorer 8 標準モードで表示させた場合、Internet Explorer 7 標準モードで表示させた場合、Internet Explorer 8 の互換表示モードで表示させた場合の動作を確認することができます。

[ドキュメント モード] は [ブラウザーモード] とは独立して存在し、Web サイト側で異なる DOCTYPE や <META> タグを使用した場合のレイアウトの変化を確認できます。

 

まとめ

互換表示機能が Emulate IE7 ボタンに比べ、どのような点で進化したのかを確認してみてください。

もし互換表示機能で問題が解決できない Web サイトを発見した場合、ご一報をお待ちしております。Report a Webpage Problem はご連絡をいただく際の役に立ちます。

Scott Dickens
Lead Program Manager

 

ページのトップへページのトップへ