http-equiv属性 【http equivalent attribute】
概要
http-equiv属性(http equivalent attribute)とは、HTMLの要素(タグ)の中で設定することができる属性(attribute)の一つで、HTTPヘッダとして解釈させたい内容を記述できるもの。meta要素で指定する。Webコンテンツの伝送に用いられる通信規約(プロトコル)であるHTTP(Hypertext Transfer Protocol)では、メッセージの先頭にあるヘッダ部に各種の制御情報やコンテンツに関する情報を記述し、後半部分のボディ部にHTMLファイルなどのコンテンツ本体を積載する。
http-equiv属性を用いると、本来はHTTPヘッダとして送信すべき内容の一部をHTMLファイル側に記載することができる。ページを受信したWebブラウザはこれをHTTPの制御情報の一部として解釈・処理する。HTTPヘッダ項目のすべてを記述できるわけではなく、主にコンテンツの形式などについての情報(メタデータ)を知らせるために使われる。
基本的な書式は <meta http-equiv="項目名" content="設定値"> で、項目名にHTTPヘッダの項目を、設定値に指定したい文字列を記述する。例えば、 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> と指定すると、HTTPヘッダ中で「Content-Type: text/html; charset=UTF-8」と指定したのと同等になる。
主な設定項目として「Content-Type」(文字コード)、「Set-Cookie」(Cookieとして記録する内容の指定)、「Content-Language」(ページの記述言語)、「Default-Style」(デフォルトのスタイルシート)、「Content-Style-Type」(スタイルシートのデータ形式)、「Content-Script-Language」(スクリプトの記述言語)などがある。
また、「Refresh」を指定すると、サーバから300番台のHTTPステータスコードが送られてきたときと同じように別のURLへ自動的に遷移するリダイレクトを行うことができる。指定時間の経過後に移動するようにしたり、同じページの再読み込みを指示することもできる。
HTML5では言語や文字コード、スタイルやスクリプトの形式などは他の指定方法が定義され、http-equiv属性による指定は廃止された。Refresh指定は利用可能で、新たにセキュリティ設定を記述する「Content-Security-Policy」指定が追加された。