HTML文書を作成する際に必要な情報です。本体(body要素)に対する記述に関してはHTMLリファレンスを参照してください。
詳細目次
まず書き始めにその文書のバージョン情報を宣言しておかなければなりません。
ユーザーエージェントはその情報を元に描画を行います(無視するものもあるようですが)。
HTML 4.01厳密型ドキュメントタイプ宣言は、1行目に以下のように記述して下さい。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
余談ですが、他のバージョンは以下の通りです。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01移行型ドキュメントタイプ宣言です。HTML 4.01厳密型ドキュメントタイプ宣言の全ての要素に加え、非推奨要素、非推奨属性などが使用可能です。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
HTML 4.01フレームセット型ドキュメントタイプ宣言です。HTML 4.01移行型ドキュメントタイプ宣言の全ての要素に加え、フレームセット用の要素が使用可能です。
簡単に説明すると、はじめにHTMLバージョン情報を宣言し、HTMLルートエレメントの中にヘッダ情報と本体が存在する形になるという形式になります。
| 種類 | 内容 |
|---|---|
| ルートエレメント | head要素、body要素 |
HTML文書をhtml要素でマークアップします。この中にヘッダ情報と本体を記述することが可能です。文書全体の言語指定はlang属性を用います。
文書全体の言語を指定します。日本語の場合は以下のようになります。
<html lang="ja">
指定をしないと、言語コードは 「UNKNOWN」となりますので指定しておきましょう。
| 種類 | 内容 |
|---|---|
| html要素の子要素 | meta要素 |
head要素は、文書のヘッダ情報を記述する要素です。
head要素の子要素としてヘッダ情報を記述します。
| 種類 | 内容 |
|---|---|
| head要素の子要素 | 空要素 |
href属性を用いて絶対URIを記述することにより、以降に出現する相対URIの解釈を行わせることが可能です。
文書の基準となる絶対URIを記述します。
<base href="http://www.rju666.com/index.html">
となっている場合は、そのファイルがどこに存在していても、http://www.rju666.com/index.htmlを基準として相対URIが解釈されます。
<a href="./about.html">
同文書内に上記のような記述があった場合は、http://www.rju666.com/about.htmlと解釈されるわけです。
link要素やstyle要素よりも前に出現した場合、相対URIの記述の解釈ができなくなってしまうのでその前に出現するようにして下さい。
| 種類 | 内容 |
|---|---|
| head要素の子要素 | 空要素 |
http-equiv属性と、name属性を用いて文書の情報を記述します。
meta要素には標準となるものがありませんので制作者が好みで定義することができます。以下は例です。
content属性とセットで用い、HTTP応答ヘッダに情報を記述させます。
http-equiv属性の種類とcontent属性の中身は以下のようなものがあります。
文書そのものの種類を記述します。
<meta http-equiv="Content-Type" content="text/html charset=Shift_JIS">
上記の例の場合、文書のタイプがtext/HTMLであることを表し、文字コードがShift_JISであることを表しています。文字コードを指定する前に日本語が出現することはできませんので最初の方に記述しておくといいでしょう。
| コード | meta要素の記述例 |
|---|---|
| Shift_JIS | <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> |
| ISO-2022-JP | <meta http-equiv="Content-Type" content="text/html; charset=ISO-2022-JP"> |
| EUC-JP | <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> |
| UTF-8 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
文書内に現れるスクリプト言語の種類を記述します。
<meta http-equiv="Content-Script-Type" content="text/javascript">
上記の例の場合、スクリプト言語のタイプがtext/javascriptであることを表しています。
ページ内にjavascriptを用いる場合には必ず記述しましょう。
文書内に現れるスタイル言語の種類を記述します。
<meta http-equiv="Content-Style-Type" content="text/css">
上記の例の場合、スタイル言語のタイプがtext/cssであることを表しています。
ページにスタイルシートを用いる場合には必ず記述しましょう。
文書の期限切れの日付を記述します。
<meta http-equiv="Expires" content="Sat, 06 Feb1999 14:25:48 GMT">
上記の例の場合、1999年2月6日午後2時25分48秒に文書の期限が切れたことを表します。
秒数と、移動先URIを記述します。指定した秒数の後に移動先URIに移動します。
<meta http-equiv="Refresh" content="12; URL=http://www.rju666.com/">
上記の例の場合、12秒後にhttp://www.rju666.com/にページが切り替わります。
ただし、Refreshに対応していないユーザーエージェントも存在しますので、他の方法(a要素など)での移動方法も用意しておくべきでしょう。
content属性とセットで用い、特性の名前を与えます。
name属性の種類とcontent属性の中身は以下のようなものがあります。
制作者の名前を記述します。
<meta name="author" content="Rju">
検索エンジンに利用するキーワードを記述します。「,(半角カンマ)」で区切って複数指定することが可能です。
<meta name="keywords" content="リンク,無断リンク,HTML,ホームページ作成">
検索エンジンによってはこの文字列を無視する場合があります。
検索エンジンの検索結果で表示される文字列を記述します。
<meta name="description" content="リンクの諸問題、HTMLの書き方の注意など">
検索エンジンによってはこの文字列を無視する場合があります。
HTMLファイルの作成に用いたアプリケーションの名称を記述します。
| 種類 | 内容 |
|---|---|
| head要素の子要素 | 空要素 |
rel属性とhref属性を用いて他の文書との関連性を記述します。
また、rev属性を用いて他の文書からの関連性を記述することも可能です。
他の文書との関連性を記述します。
<link rel="index" href="../index.html">
上記の例の場合、この文書からみて一階層上のindex.htmlが索引であることを示しています。
| 関連内容 | rel属性値 |
|---|---|
| 開始ページ | start |
| 次のページ | next |
| 前のページ | prev |
| 目次ページ | contents |
| 索引ページ | index |
| 用語集ページ | glossary |
| 章 | chapter |
| 節 | section |
| 小節 | subsection |
| 付録ページ | appendix |
| ヘルプページ | help |
| スタイルシート | stylesheet |
他の文書からの関連性を記述します。
<link rev="made" href="mailto:rju@rju666.com">
上記の例の場合、rju@rju666.comというメールアドレスは、この文書制作者の情報であることを示しています。
style要素はページ内の要素の見栄えとなるスタイルシートを定義します。
| 種類 | 内容 |
|---|---|
| head要素の子要素 | スタイルシート |
type属性を用いてスタイルシートのスタイル言語の種類を指定します。
type属性はスタイルシートのスタイル言語の種類を指定します。
<style type="text/css">
内容は、スタイルシートを記述します。
style要素を無視してしまうユーザーエージェントもあるようです。
<!--
BODY {
font-family : serif;
}
-->
<!--と-->でコメント扱いにしておくと、有効なユーザーエージェントではスタイルシートとして、無効なユーザーエージェントに対してはコメントとして振舞うようにできます。
| 種類 | 内容 |
|---|---|
| head要素の子要素 | テキスト |
文書のタイトルを記述します。
<title>サイト作成における問題</title>
ブラウザのタイトルバーに表示されたり、ブックマーク時のタイトルや検索エンジンでの検索結果表示などに用いられると思われます。
| 種類 | 内容 |
|---|---|
| html要素の子要素 | body要素の子要素 |
本体部分です。HTMLリファレンスに記載されている要素が利用可能です。詳細はHTMLリファレンスを参照してください。
2003.11.10