Go to information

meta要素

  1. meta要素
  2. content属性
  3. http-equiv属性
  4. name属性
  5. scheme属性
  6. その他の属性

meta要素

meta要素(generic metainformation)は文書の制作者、制作年月日、説明、キーワードなどの文書の付加情報を記述したり、閲覧時に文字化けを防ぐ文字コード(符号化方法)などの HTTPヘッダの追加情報を設定したりと当該文書に関する様々な情報(メタ情報)を示します。終了タグはなく、内容をもたない空要素です。

name属性には標準となるプロパティのリストはなく、文書制作者が好みに応じてどの様な文書の情報でも定義できます。http-equiv属性で定義した情報は HTTPヘッダ(ファイルを読み込む際に UA とウェブサーバーの間で交わされるメッセージ)の追加情報となります。name属性, http-equiv属性の対になる情報を content属性で定義します。ゆえに、content属性は必須属性です。

バージョン
要素型
head要素の子要素
開始タグ
必須
終了タグ
なし
非推奨
-
内包可能
-

content属性

バージョン
指定要素
meta
必須
必須属性
非推奨
-
属性値
文字列

name属性http-equiv属性で指定したプロパティの値を指定します。meta要素の必須属性です。半角アルファベットの大文字・小文字を区別する(case-sensitive)ので厳密な指定が必要です。

http-equiv属性

バージョン
指定要素
meta
必須
-
非推奨
XHTML1.1 非推奨
属性値
文字列

name属性の代わりとして働き、HTTPヘッダの付加情報となります。HTTPサーバー(ウェブサーバー)が指定された情報を収集するために用い、UA が適切に処理を行うための情報となります。たとえば、検索エンジンのロボットやウェブブラウザなどの UA がその文書が記述されている文字コードや MIMEタイプ を適切に処理できるように明示する場合は次のように記述します。

<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">

この記述により UA が文書を読み込むと同時に文書形式は "text/html"、記述されている文字コードは "Shift_JIS" という情報を UA に与えることができ、ユーザーの閲覧時や検索エンジンのロボットがウェブページの情報を収集(インデックス)する際の文字化けを防ぐことに役立ちます。http-equiv属性は他にも次のような場合にも使用します。http-equiv属性の値は半角アルファベットの大文字・小文字が区別されません(case-insensitive)。

スクリプトやスタイルの MIMEタイプ

<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Style-Type" content="text/css">

文書を読み込んだ際に文書内で使用しているスクリプトやスタイルを UA が正しく認識できるように指令しています。"Content-Script-Type" がスクリプト、"Content-Style-Type" が制作者スタイルシートの MIMEタイプを定義しており、content属性の値は、スクリプトに JavaScript(text/javascript)を、スタイルシートには CSStext/css)を使用していることを明示しています。

自動的に再表示(更新)させる

<meta http-equiv="refresh" content="10">

"refresh" は UA に対して文書の再読込を行うようにする指令で、content属性の値には何秒おきに再読み込みさせるかを指定します。この機能をクライアントプル(Client Pull)と呼びます。この指定をさらに拡張して、content="10;url=http://w3g.jp/new/" のようにコロン(;)に続いて、「url=」の書式で再読み込み後に指定の URI にリダイレクトさせることもできます。このクライアントプルには Netscape Navigator 2.0, Internet Explorer 3.0 のバージョンより対応しています。

アクセス毎に最新のページを読み込みさせる

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">

"pragma" は HTTP/1.0準拠の UA を対象とし、"Cache-Control" は HTTP/1.1準拠のUA を対象とする指令で、この例ではどちらも UA に対してキャッシュ(cache)の制御を行う命令をしています。content属性の値の "no-cache" はキャッシュしないという処理内容です。これはウェブブラウザなどの UA にはレンダリング速度を速めるために、一度表示したデータをハードディスク内に一時的に保存しておき、次に表示するときにはウェブサーバーから再度ダウンロードするのではなく、ハードディスク内のデータをそのまま表示する機能があり、頻繁に更新する文書においては、キャッシュ機能は好ましくないのでキャッシュさせたくない場合に使用します。ただし、この指定で UA がキャッシュを無効にするかどうかは、各 UA の振る舞いに依ります。また、この指定が有効なのは当該文書内の HTML やテキストのデータのみで、当該文書内に使用している画像ファイルなどには働きかけないようです。

XHTML1.1 では HTML互換のため非推奨

なお、XHTML1.1 では http-equiv属性の指定は全て HTML互換のため指定自体が推奨されていません。このため文字コードや MIMEタイプ、リダイレクト、キャッシュの制御などは HTTPヘッダの追加情報として設定するのではなく、直接、HTTPヘッダ情報として定義する必要があります。そこで、httpd.conf や .htaccess を使います。サーバーソフトウェアに Apache を利用しているウェブサーバーであれば、レンタルサーバーの形式でスペースを借りている各ウェブサイト管理者の方でも .htaccess の利用が可能な場合もあります。

AddType "text/html; charset=Shift_JIS" .html
AddType text/css .css
AddType text/javascript .js
Redirect permanent /old/ http://w3g.jp/new/
<Files ~ "\.(html|htm)$">
Header set Pragma no-cache
Header set Cache-Control no-cache
</Files>

たとえば、上記のように http-equiv属性の指定はすべて代替が可能で、httpd.conf や .htaccess で直接、HTTPヘッダに設定した方が確実です。

name属性

バージョン
指定要素
meta
必須
-
非推奨
-
属性値
文字列

文書の著者名や内容の説明、キーワードなどの文書に関するプロパティを指定します。半角アルファベットの大文字・小文字を区別する(case-sensitive)ので厳密な指定が必要です。一般的によく指定されている name属性には次のようなものがあります。ただし、これらの設定は正式な仕様ではなく、文書制作者が好みに応じてどの様な文書の情報でも定義することができます。

文書の著者名を示す

<meta name="author" content="上田 遼">

"author" は文書の著者(作者)を示し、content属性の値にその文書の著名名を記述します。

文書の内容の説明(概要)を示す

<meta name="description" content="HTML reference">

"desicription" は文書の内容説明を示し、content属性の値にその文書の内容を簡潔に表した説明文(要約文)を記述します。Yahoo! や Google などの検索エンジンでは、この要約文が検索結果に表示されるウェブページの説明部分(スニペット)にもなります。

(検索のヒット率を上げるための)文書のキーワードを示す

<meta name="keywords" content="HTML,XHTML,reference">

"keywords" は文書のキーワードとなる語句を示し、content属性の値にカンマ(,)区切りでキーワードとなる単語を複数記述します。その文書の内容に実際に記述されていないキーワードや、同一キーワードを繰り返し記述しても意味はありません。

検索エンジンロボットにページの登録とリンク先を辿る可否を指定

<meta name="ROBOTS" content="ALL">

"ROBOTS" は検索エンジンロボットに対する指示で、content属性の値にページの登録とリンク先を辿る可否を指定します。このロボットの動きを制御するプロパティについては属性の値は大文字で記述するのが正式とされます。特に指定がなければ検索エンジンロボットは自動的にウェブページの情報を収集し、そのウェブページ内のリンク先を辿って、他のウェブページの情報を収集するのでフレームのメニューページやポップアップページなどの検索でユーザーに直接飛んでこられては困るようなウェブページ以外は、このロボットの行動を制御する記述を行う必要はありません。

ページ登録 リンク先を辿る タグの表記例
<meta name="ROBOTS" content="ALL">
<meta name="ROBOTS" content="INDEX,FOLLOW">
× <meta name="ROBOTS" content="INDEX,NOFOLLOW">
× <meta name="ROBOTS" content="NOINDEX,FOLLOW">
× × <meta name="ROBOTS" content="NOINDEX,NOFOLLOW">
× × <meta name="ROBOTS" content="NONE">

文書作成時に使用したソフトウェアを示す

<meta name="generator" content="TeraPad">

"generator" は文書作成時に使用したソフトウェア(HTMLエディタやテキストエディタ、CMS など)を示します。content属性の値に使用したソフトウェアの名称を記述します。

scheme属性

バージョン
指定要素
meta
必須
-
非推奨
-
属性値
文字列

name属性と content属性に指定されたプロパティの値を解釈する際のスキーム(プロパティの値を正確に解釈するための追加的な情報)を示します。半角アルファベットの大文字・小文字を区別する(case-sensitive)ので厳密な指定が必要です。たとえば文書の作成日を name属性の値に "creation-date" と指定して、その日時を content属性の値に "05-09-26" と示した場合、scheme属性の値は "05-09-26" という数字の羅列されただけの情報を文書の作成日として意味が通るように "year-month-day" と補足することができます。現状では、ほとんど活用されておらず、実際のところ UA の対応についても不明です。

<meta name="creation-date" content="05-09-26" scheme="year-month-day">

このように独自の一般的ではないプロパティを定義しても、一応は scheme属性で文書を処理するソフトウェアがその内容を理解できるように補足情報を付けることができます。

その他の属性

共通属性
現在位置
  1. W3G
  2. XHTML
  3. HTML辞典
  4. meta要素
ナビゲーション
ステータス情報
作者
上田 遼
公開
2005-09-26T19:59:47+09:00
更新
2008-12-29T04:27:10+09:00
URI
http://w3g.jp/xhtml/dic/meta
検索

直近の制作実績等:大阪人間科学大学 New! / 大阪薫英女子短期大学 New! / セキスイハイム みんなのお国じまん New!