web-dev-qa-db-ja.com

IE9がドキュメントモードでIE7標準として開くのはなぜですか?

IE9でDOCTYPEを使用してWebページを開くと

<!DOCTYPE html>

IE7標準としてドキュメントモードを開きます。

ページを開くときにデフォルトのIE9標準が必要です。

このドキュメントモードの問題を修正する方法は?

IEブラウザー開発者ツールに含まれる方法のスクリーンショット

enter image description here

67
Justin John

この答えを試してください: https://stackoverflow.com/a/13524518/167931

要約、IEブラウザーにメタタグで詳細情報を提供します。

<!DOCTYPE html>
<html>
  <head>
    <title>My Web</title>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />

編集注:Olly Hodgsonが述べたように、適切なオプションはIE = Edgeです。これは上記のスニペットで現在述べられています。以下は、元の動作バージョンでもあります:

   <meta http-equiv="X-UA-Compatible" content="IE=100" />
99
Radim Köhler

IE7標準の下でドキュメントを解析できる理由はいくつかあります。

  1. サーバーは、ドキュメントのHTTP応答でIE7のX-UA-Compatibleヘッダーを送信しています。 Fiddler などのツールを使用して、サーバーの応答ヘッダーを確認します。
  2. HTMLドキュメントは、IE7のX-UA-Compatibleプロパティ値でメタタグを設定しています。
  3. 「互換表示」で開くために、ページはIEによって自動的に検出されています。ここでは、デフォルトですべてのイントラネットサイトがIEの「互換表示」で表示されることに注意してください。 IEのTools -> Compatibility view settingsの下にある[互換表示でイントラネットサイトを表示する]チェックボックスをオフにします。 [互換表示ですべてのWebサイトを表示する]もオフにする必要があります。
  4. 開発者ツールを使用し、「IE7標準」モードでレンダリングするページを表示するように明示的に設定しました。ただし、これはクライアントごとにのみ発生することに注意してください。

2016-01-28を更新
@ Gordonが以下のコメントで指摘したように、別の理由として、ネットワーク管理者が互換性ビューのサイトをネットワーク上のグループポリシーとして設定したことが考えられます。
その場合の唯一の解決策は、ネットワーク管理者に連絡して、グループポリシーからサイトを削除することです。 HTML1203こちら をご覧ください。

36
Tanzeel Kazi

これはweb.configでも設定できます。

<system.webServer>
    <httpProtocol>
        <customHeaders>
            <clear />
            <add name="X-UA-Compatible" value="IE=Edge" />
        </customHeaders>
    </httpProtocol>
7
Don Rolling

ページにIE7を強制するためのメタタグが含まれていますか?

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

これにより、ページでIE7互換性が使用されます。

3
Qpirate

WebサーバーがApache2である場合、VirtualHost構成で以下のような応答ヘッダーを設定して問題を解決できることを共有したいだけです。

Header set X-UA-Compatible "IE=Edge"
2
Dev Blanked

この問題は、IE9と互換モードの組み合わせに固有のようです。私たちにとって、互換モードはSharePoint 2013サイトであり、IE11はページを編集するために互換モードで実行する必要があるため、互換モードを無効にすることはできませんが、IE9は表示どおりに動作していました。メタタグでX-UA-Compatibleを「IE = Edge」に設定すると問題が修正されましたが、値をIE = 10に設定しても動作に影響はありませんでした。同じdoctypeもあります。

1
Matt Connolly

プロジェクトがASP.NET MVCの場合、必ず以下を追加してください。

<meta http-equiv="X-UA-Compatible" content="IE=Edge">

レイアウト(テンプレート)ページにタグ付けします。デバッグと調整に2時間を費やしましたが、そのメタタグを自分の子ページに追加しただけであることがわかりました。レイアウトページに追加するとすぐに、ブラウザーはエッジモードで完全に読み込まれました。

1
Jason Marsell