Help us understand the problem. What is going on with this article?

今さらIE8の互換表示モードに悩まされた時

More than 5 years have passed since last update.

もはや切り捨ててもいいんじゃないか感はんぱではないIE8ですが、
業務上やむを得ず対応しないといけないことはままあります。

IEとえば互換表示モードなるものがあり、親切にも以前のIEバージョンでも動作するようにしてくださっていて、
それが原因で最新のブラウザーモードとドキュメントモードにしておけば問題なく表示されるところを、
これまた親切にもIEがよしなに互換表示モードに切り替えてくださることで、
見事表示が崩れるという素敵現象が発生することがあります。

基本的にこういった事態を回避する方法としてよくあるのが、
htmlのheadタグ内に以下のmetaタグを記入して互換表示モードにさせないというものがあります。

まほうのじゅもん
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- IE=edge,chrome=1 とすることもある -->

基本的にはこれで問題ないことが多いのですが、(事実今まではこれで何とかなってた)
何故か急にこの指定が効かなくなり、
エラーが発生した旨のポップアップとともに強制的に互換表示モードにさせられる謎現象にハマりました。
(なったりならなかったり、開発者モードで設定かえるとなおったりする)

あれこれ試行錯誤した結果、
サーバーのレスポンスヘッダにも

/etc/httpd/conf/httpd.conf
Header set X-UA-Compatible 'IE=edge'

のようにX-UA-Compatible: IE=edgeを追加したところ見事解決しました。
(そもそも互換表示に切り替えるボタン自体disabledになる)

なので同じような問題に幸運にもぶち当たった方は一度お試しいただくといいかもしれません。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away