[HTML] meta http-equiv="X-UA-Compatible"記述不要

3 min read
hiroweb developer

TL;DR

<head>内に下記のようなmeta要素が定義されているサイトがまだある。

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

これは Internet Explorer(IE)用の定義であるため、IE のサポートをしていない場合は現在指定する必要がない1

meta http-equiv="X-UA-Compatible" とは

IE8 以降には、ページを IE で正しく表示するための「互換モード」と呼ばれる機能がある。

互換モードを使用するには、<head>内に meta要素を追加する必要がある。このmeta要素は、http-equiv="X-UA-Compatible"という属性値を持ち、content属性には使用する互換モードを指定する。

このmetaタグを利用することで、特定のIEのバージョンのレンダリングモードを強制できる(具体的には、古いIEバージョンのレンダリングモードを強制して、古いページが正しく表示されるようにするためのもの)。

<!-- IE8の互換モード -->
<meta http-equiv="X-UA-Compatible" content="IE=8" />

<!-- 最新のIE -->
<meta http-equiv="X-UA-Compatible" content="IE=edge" />

chrome=1

chrome=1の指定は、かつて IE で Google Chrome のレンダリングエンジンを利用するためのプラグイン、「Google Chrome Frame」用の記述である。

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

Google Chrome Frame はすでに廃止されている2ため、こちらも指定は不要。

今後はどうするのか

IE のサポートが終了し、今後は無効化され使うこともできなくなるため、互換性の確保などの懸念もなくなっている。そのため、この meta 要素の定義は必要ない。

参考

注釈

  1. すでにサポート終了しているが、2023 年 2 月に完全無効化される予定(Internet Explorer よ永遠に(眠れ) ~ 2023 年 2 月の完全無効化を前に「Microsoft Edge」とともに振り返る

  2. blog.chromium.orgRetiring Chrome Frame