"IE=edge"が効かなかったときの話
Internet Explorerで互換表示設定を無効化しようとしてハマったので、メモ。
互換表示させたくないHTMLが100ファイルくらいあったので各ファイルの<head>
タグの中に下記のコードを書いたところ、一部のファイルだけ互換表示設定が無効化されない現象に遭遇した。
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
この設定が有効でないとCSSやらJavaScriptやらが正常に動作せず、レイアウトが崩れてしまって困る。
レイアウトが崩れてしまうHTMLと正常に表示されるHTMLを比べてみたところ、前者のソースには<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
の出現位置が後ろの方にあるという特徴があることに気づいた。
文字エンコーディングの指定はファイルの先頭から1024バイトまでに含まれるべきという話も参考にして試行錯誤して出した結論。
どうやら、<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
はファイルの先頭から4096バイトまでに含まれるべきであるらしい。
最後の文字の>
が4096バイト目ならばOK。4097バイト目ならNG。
今回調べた環境
Internet Explorer バージョン11.0.9600.18921
参考
Author And Source
この問題について("IE=edge"が効かなかったときの話), 我々は、より多くの情報をここで見つけました https://qiita.com/ssb/items/5db4fd8184c4ec676a6c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .