IE 8をIE7互換モードに強制する
質問
.NETまたはJavascriptを使用してIE8をIE7互換モードに強制する方法はありますか?
解決
これをメタタグに追加する場合:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
IE8はIE7のようにページをレンダリングします。
他のヒント
web.configで実行できます
<httpProtocol>
<customHeaders>
<add name="X-UA-Compatible" value="IE=7"/>
</customHeaders>
</httpProtocol>
上記のソリューションよりも優れた結果が得られています。これが解決策として与えられなかった理由がわかりません。 :)
今すぐ見つけたかもしれません。 http: //blog.lroot.com/articles/the-ie7-compatibility-tag-force-ie8-to-use-the-ie7-rendering-mode/
サイトでは、このメタタグを追加すると記載されています:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
またはこれを.htaccessに追加
Header set X-UA-Compatible: IE=EmulateIE7
HTTPヘッダー IE8がIE7互換モードを使用するように設定できます。
それよりもさらに簡単です。 HTMLを使用すると、このメタタグをページに追加できます(ページの最初のもの):
<meta http-equiv="X-UA-Compatible" content="IE=7" />
.netを使用して実行したい場合は、ヘッダーにそのメタ情報を含むhttpリクエストを送信するだけです。ただし、これを行うにはページの更新が必要です。
また、ここで同様の質問を見ることができます: VBScriptを使用したIE8の互換モード
IE 8標準モードでIE 8ページのレンダリングを切り替える場合はもう1つ
<meta http-equiv="X-UA-Compatible" content="IE=100" /> <!-- IE8 mode -->
これに関する注意:
IE 8.0sエミュレーションは、同じページを表示することのみを約束します。機能が壊れる可能性のある微妙な違いがあります。私は最近それだけで問題が発生しました。 IE 7.0が&quot; anonymous()&quot;というJavaScriptラッパー関数を使用する場合IE 8.0では、ラッパーの名前は異なっていました。
したがって、エミュレーションを有効にするため、JavaScriptのようなものが「ただ動作する」ことを期待しないでください。
これはIISで実行できます。 http://weblogs.asp.net/joelvarty/archive/2009/03/23/force-ie7-compatibility-mode-in-ie8-with-iis-settings.aspx
コメントも読んでください: 2009年4月1日水曜日、ジョンムーアによる午前8時57分
簡単なフォローアップ。 IE = EmulateIE7の値を使用している限り、これは私のサイトでうまく機能しました。 IE = 7を使用しようとすると、IE8で実行すると、サイトが本質的にハングしました。
私のコードにはこのタグがあります
meta http-equiv =&quot; X-UA-Compatible&quot; content =&quot; IE = 7&quot; /&gt;
このタグをスキップしても、レイアウトがうまく表示される方法があります そのタグを使用すると、ディスプレイはIE 7まで動作しますが、それ以降のバージョンでも実行したい...