.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の互換モード
切り替えたい場合は、もう1つIE 8ページレンダリングIE 8標準モード
<meta http-equiv="X-UA-Compatible" content="IE=100" /> <!-- IE8 mode -->
これは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 AM by John Moore
迅速なフォローアップ。 IE = EmulateIE7の値を使用している限り、これは私のサイトでうまく機能しました。 IE = 7を使用しようとすると、IE8で実行すると、サイトが本質的にハングしました。
これへの注意:
IE 8.0sエミュレーションは、同じページを表示することのみを約束します。機能が壊れる可能性のある微妙な違いがあります。私は最近それだけで問題が発生しました。ここでIE 7.0は、IE 8.0で「anonymous()」と呼ばれるjavascriptラッパー関数を使用します。ラッパーの名前は異なります。
したがって、エミュレーションを有効にするため、JavaScriptのようなものが「機能する」ことを期待しないでください。
私のコードにはこのタグがあります
meta http-equiv = "X-UA-Compatible" content = "IE = 7" />
このタグをスキップできますが、そのタグを使用してレイアウトがうまく表示され、表示はIE 7まで動作しますが、それ以降のバージョンで実行したい...