重複の可能性:
IE7 ブラウザーと IE7 互換モードのブラウザーを区別する
かなり大規模なシステムで IE8 を完全にテストする時間はありませんでした。IE8の使用も禁止できないところまで来ています。私たちのユーザーは頑固で、それほど洗練されていないので、「互換モード」ボタンを使用するように指示できるとは思いません。代わりに、一時的な修正として「IE=EmulateIE7」メタ タグを追加します。
問題は、このタグが使用されている場合でも、ブラウザーは自分自身を IE8 として報告し、それがページによって検出されて拒否されることです。サーバー側の検出がメタ タグを検出できない理由は理解できますが (サーバーには、メタ タグが送信されて処理される前に既にユーザー エージェントが存在します)、クライアント側のチェックも失敗します。クライアント マシンで互換モード ボタンがクリックされた場合、ユーザー エージェントは IE7 ですが、メタ タグを使用している場合はそうではありません。
これは、とりわけ、チェックを無効にする必要があることを意味します。その後、どこかで間違いを犯してメタ タグをページに追加するのを忘れると、ページが壊れてしまいます。
他の誰かがこれに遭遇し、より良いアプローチを考え出しましたか? モードが meta タグによって設定されている場合、IE8 が互換モードで実行されていることを検出する方法はありませんか?
そして、すべてのページを IE8 標準モードと互換性を持たせるべきであるという有効な考え方があることは知っていますが、現実の片隅では、それは現時点で実行可能なオプションではありません (指摘しますが、非標準的な方法で書かなければならない 4 つまたは 5 つのバージョンの IE を作成しませんでした)。