<meta> http-equiv 属性
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
http-equiv は <meta> 要素の属性で、文書を返したレスポンスに特定の HTTP ヘッダーが含まれているかのように、ブラウザーに処理指示を与えることができます。
メタデータは、ページ全体に適用される文書レベルのメタデータです。
<meta> 要素に http-equiv 属性が指定されている場合、content 属性には対応する http-equiv の値を定義します。
例えば、次の <meta> タグは、5 分後にページを更新するようにブラウザーに指示します。
<meta http-equiv="Refresh" content="300" />
値
HTTP ヘッダーの一部のみが http-equiv 値として対応しています。
これらは、以下に含まれます。
-
content-language非推奨;- : 支援技術またはブラウザーによるスタイル設定で使用される、文書の既定の言語を設定します。
HTTP の
Content-Languageヘッダーと同様です。 代わりにlang属性を使用してください。
- : 支援技術またはブラウザーによるスタイル設定で使用される、文書の既定の言語を設定します。
HTTP の
-
content-type- : 文書のメディア種別(MIME タイプ)および文字エンコードを宣言します。
content 属性は、指定する場合は
"text/html; charset=utf-8"でなければなりません。 これは、charset属性が指定された<meta>要素と同等であり、文書内の配置に関する同じ制限があります。text/htmlメディア種別で提供される文書でのみ使用できます。XML 型(application/xmlまたはapplication/xhtml+xml)で提供される文書では使用できません。 HTTP のContent-Typeヘッダーを参照してください。
- : 文書のメディア種別(MIME タイプ)および文字エンコードを宣言します。
content 属性は、指定する場合は
-
content-security-policy- : ページ作成者が、現在のページに対するコンテンツセキュリティポリシー (CSP) を定義できるようにします。通常、クロスサイトスクリプティング攻撃を防ぐために、許可するオリジンやスクリプトのエンドポイントを指定します。
HTTP の
Content-Security-Policyヘッダーを参照してください。
- : ページ作成者が、現在のページに対するコンテンツセキュリティポリシー (CSP) を定義できるようにします。通常、クロスサイトスクリプティング攻撃を防ぐために、許可するオリジンやスクリプトのエンドポイントを指定します。
HTTP の
-
default-style- : 既定の CSS スタイルシートセットの名前を設定します。
-
refresh-
: HTTP の
Refreshヘッダーと同等です。 この命令は、次のことを指定します。 -
content属性が非負の整数である場合、ページが再読み込みされるまでの秒数です。 -
content属性が非負の整数で、その後に;url=および有効な URL が続く場合、ページが別の URL にリダイレクトされるまでの秒数。タイマーは、ページが完全に読み込まれたとき、つまり
loadおよびpageshowイベントが両方発生した後、開始されます。 詳細情報はアクセシビリティの考慮を参照してください。
-
-
set-cookie非推奨;- : 文書にクッキーを設定します。
ブラウザーはこのプラグマを無視するようになりました。代わりに、 HTTP の
Set-Cookieレスポンスヘッダーまたはdocument.cookieを使用してください。
- : 文書にクッキーを設定します。
ブラウザーはこのプラグマを無視するようになりました。代わりに、 HTTP の
-
x-ua-compatible非推奨;- : 現在は廃止された Microsoft Internet Explorer の古いバージョンで使用されており、指定された動作により忠実に従うようにしています。
指定された場合、
content属性は "IE=edge" という値を持つ必要があります。 ユーザーエージェントは、このプラグマを無視するようになりました。 この名前は、HTTP のX-UA-Compatibleヘッダーに由来しています。
- : 現在は廃止された Microsoft Internet Explorer の古いバージョンで使用されており、指定された動作により忠実に従うようにしています。
指定された場合、
警告:
一部のブラウザーは、上記に掲載されていない追加のヘッダーを処理します。
認識されないヘッダーや不正な値は無視されるため、ブラウザーの実装によって動作に不整合が生じる可能性があります。
特に、<meta http-equiv= を使用して その他のセキュリティヘッダーを設定しないでください。これは、誤ったセキュリティ意識につながるおそれがあります。
アクセシビリティの考慮
http-equiv="Refresh" の値が設定されたページは、更新間隔が短すぎになるという危険性があります。
画面の内側から読み上げるような支援技術を利用している人は、自動的にリダイレクトされる前にページの内容を読み、理解することができないかもしれません。
また、突然に予告なくページ内容が更新されると、視力が低下している人にとっても、混乱する可能性があります。
例
>安全でないインラインコードを無効にし、HTTPS リソースのみ許可する
この HTML の <meta> 要素は、HTTPS 経由でのリソース(画像、フォント、スクリプトなど)の読み込みのみを許可するように、既定の CSP を設定します。
unsafe-inline および unsafe-eval ディレクティブは設定されていないため、インラインスクリプトはブロックされます。
<meta http-equiv="Content-Security-Policy" content="default-src https:" />
同じ制限は、HTTP must be provided ヘッダーを使用して適用することができます。
Content-Security-Policy: default-src https:
ページのリダイレクトを設定
次の例では、 http-equiv="refresh" を使用して、ブラウザーにリダイレクトを実行するように指示しています。
content="3;url=https://www.mozilla.org" 属性は、3 秒後にページを https://www.mozilla.org にリダイレクトします。
<meta http-equiv="refresh" content="3;url=https://www.mozilla.org" />
仕様書
| Specification |
|---|
| HTML> # attr-meta-http-equiv> |
ブラウザーの互換性
Loading…
関連情報
<meta name="referrer">- メタデータ:
<meta>要素 - Preventing attacks using
<meta>httparchive.org (2022)