IEで互換性ビューを無効にする方法
質問
IE 8を使用している人が互換性モードに行くのをどのように止めるのだろうかと思いますか?
<meta http-equiv="X-UA-Compatible" content="IE=8" />
私はこのタグを見つけました、そして、これにより人々はIE-8モードにとどまることを強いると思いますが、私はあまりにも確信が持てず、私が持っているのでチェックすることができません。
人々がIE 9モードにいる場合、私は彼らにIE 8またはIE 7互換モードに入らないように強制しますか?
上記の行をコードに入れようとし、IE 9->ツール - >互換ビュー(グレーアウト)に行きました
しかし、「互換性ビューの設定」はグレーアウトされておらず、そこにサイトを追加できるようです。
それで、それは無効にするべきではありませんか?
解決
<meta http-equiv="X-UA-Compatible" content="IE=8" />
IE8標準でページを強制する必要があります。ユーザーはサイトを互換性リストに追加できますが、このタグが優先されます。
チェックする簡単な方法は、ページをロードして、次のアドレスバーを入力することです。
javascript:alert(navigator.userAgent)
文字列にIE7が表示されている場合、互換性モードで読み込まれています。そうでない場合はそうではありません。
他のヒント
必要なのは、IEでCMを強制的に無効にすることです - このコードを貼り付けるだけです(IE9以下のCMが無効になります):
<meta http-equiv="X-UA-Compatible" content="IE=9; IE=8; IE=7; IE=EDGE" />
ソース: http://twigstechtips.blogspot.com/2010/03/css-ie8-meta-tag-to-disable.html
これは、強制するのに十分なはずです IE
ユーザーは、任意の互換性モードをドロップします IE
バージョン:
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
ただし、注意する必要があるいくつかの注意事項があります。
- 上記のメタタグは、として含める必要があります 下の最初のタグ
<head>
. 。のみ<title>
タグはその上に配置される場合があります。
そうしないと、エラーが発生します IE9
開発ツール: X-UA-Compatible META tag ignored because document mode is already finalized.
このマークアップを検証したい場合は、閉じることを忘れないようにしてください
meta
aでタグ/>
ただの代わりに>
.で始まります
IE11
, 、エッジモードは、推奨されるドキュメントモードです。それをサポート/有効にするには、HTML5ドキュメントタイプ宣言を使用します<!doctype html>
.WebFontsをサポートする必要がある場合
IE7
, 、必ず使用してください<!DOCTYPE html>
. 。私はそれをテストし、WebFontをレンダリングすることを発見しましたIE7
使用するとかなり信頼できませんでした<!doctype html>
.
Google Chromeフレームの使用は人気がありますが、残念ながら2014年1月の今月中にドロップされる予定です。
<meta http-equiv="X-UA-Compatible" content="IE=EDGE,chrome=1">
ASP.NET MVCを使用している場合、私は見つけました Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1")
_layoutのコードブロックで非常にうまく機能します:
@Code
Response.AddHeader("X-UA-Compatible", "IE=edge,chrome=1")
End Code
<!DOCTYPE html>
everything else
Felixfettによって与えられた答えは私のために働きました。繰り返します:
<meta http-equiv="X-UA-Compatible" content="IE=11; IE=10; IE=9; IE=8; IE=7; IE=EDGE" />
コードの最初の「メタ」タグとして持っています。 Internet Explorer向けに現在公開されているバージョンであるため、10と11を追加しました。
私は彼の答えにコメントしたばかりですが、私は十分な評判を持っていません...
Apacheでこれを達成する別の方法は、次の行をに配置することです .htaccess
Webサイトのルートフォルダー(またはApacheの構成ファイル)。
BrowserMatch "MSIE" isIE
BrowserMatch "Trident" isIE
Header set X-UA-Compatible "IE=edge" env=isIE
これには、あなたが持っている必要があります mod_headers
と mod_setenvif
モジュールが有効になっています。
追加のHTTPヘッダーはIEブラウザにのみ送信され、他のものはありません。
JSFで使用しました:
<h:head>
<f:facet name="first">
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
</f:facet>
<!-- ... other meta tags ... -->
</h:head>
ページにタグを追加しても、インターネットコントロールパネルのUIを制御しません(選択ツール - >オプションを選択するときに表示されるダイアログ)。 Google.com、MSN.com、About:BlankまたはExample.comである可能性のあるホームページを見ている場合、インターネットコントロールパネルには、ページの内容が何であるかを知る方法がなく、ダウンロードされません。背景に。
見て MSDNに関するこのドキュメント 互換性モードとサイトの電源を切る方法について説明しました。