ここでは,XHTML をファイルとして作成するにあたってのきまりについて説明する。XHTML 文書の基本的な構造についても述べる。
XHTML をファイルとして作成するとき,XHTML が作られた大きな枠組みである XML のきまりに従う必要がある。XHTML は XML 文書なのである。
XHTML ファイルは,まず何よりも先に XML 宣言から始まる。この書き方の一般的な説明は省略するが,XHTML 1.1 では次のように書くものである。
<?xml version="1.0" encoding="
文字エンコーディング"?>
ここで,文字エンコーディングは,テキストの文字を,転送などの要請で数値に直すやり方である。WWW ページが文字化けすることがあるが,これは,多くはブラウザがテキストの文字エンコーディングを間違えてしまった(数値から文字への変換を誤った)ために起こるものである。日本語においては,文字エンコーディングとして JIS,日本語 EUC,シフト JIS などが知られている。また,ISO 10646(Unicode もほぼ同じものである)という,世界中の文字を表現できる枠組みでは(当然日本語も含まれる),UTF-8,UTF-16 などという文字エンコーディングがある。XML 宣言では,そのファイル中で,どんな文字エンコーディングが使用されているかを明示する。
文字エンコーディングの指定は,そのファイルにおけるそれが,
ISO-2022-JP
EUC-JP
Shift_JIS
UTF-8
UTF-16
と書く。
問題は,明示の方法はわかったが,果たしてファイルでの文字エンコーディングが何かを知ることであろう。一般的に,Windows および Mac OS では,シフト JIS が使われることが多い。また,Linux/UNIX では,日本語 EUC が使われることが多い。ただし,使用しているエディタによっては,文字エンコーディングを指定して保存ができるものもある。
たとえば,文字エンコーディングがシフト JIS であるときの,XHTML ファイルの冒頭に書かれる XML 宣言は次のようになる。
<?xml version="1.0" encoding="Shift_JIS"?>
本チュートリアルの XHTML ファイルの文字エンコーディングはシフト JIS である。したがって,このページのページソースをご覧いただけば,ファイルの先頭にこれを同じものが書かれているのが確認できるだろう。
なお,この XML 宣言は,タグに似た形をしているが,タグではない(タグとは呼ばない)。
DOCTYPE 宣言は,XML 宣言の次に書かれる。XML 文書において,それが XHTML であることを示すものである。XHTML 1.1 の DOCTYPE 宣言は次のように書く。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
DOCTYPE 宣言も,タグではない。
XHTML ファイルは,XML 宣言,DOCTYPE 宣言に続いて本体が記述される。XHTML では,本体は 1 つの html
要素として記述される。
<html>
...</html>
html
要素の開始タグには,(主にほかの XML から作られた言語と混在させるために)XHTML の要素の種類名とほかの XML から作られた言語の要素の種類名とを区別するために,xmlns
属性を次のような書式で書き込む。これは,さしあたって形式的なものと考えて差し支えないだろう。
xmlns="http://www.w3.org/1999/xhtml"
したがって,html
要素の開始タグは,少なくとも,
<html xmlns="http://www.w3.org/1999/xhtml">
という形になる。
html
要素は,その内容が,head
要素と body
要素であると決められている。これらが,1 つずつ,この順で,html
要素の内容として出現する。html
要素の内容として,それ以外の要素およびテキストは出現してはならない。
<head>
...</head>
<body>
...</body>
ここで,
head
要素にはその文書に関する情報body
要素には出力されるべき本文が書かれる。
head
要素には,その内容として,文書のタイトルを記述する title
要素がどこかに 1 度だけ出現しなければならないと決められている。
<title>
...</title>
title
要素の内容はテキストで,その文書のタイトルを記述する。たとえば,
<title>Let's begin XHTML -- Section 3</title>
などと書く。head
要素には,このほかにも文書情報を記述するための要素が書かれるが,これについては Section 14 などで述べる。最低限必要なのは title
要素だけである。
body
要素に,出力されるべき本文が書かれていく。この要素の内容は,パラグラフ,見出し,箇条書き,表といった要素である。
以上をまとめると,XHTML 1.1 のファイルは全体として次のような骨格をしている。
<?xml version="1.0" encoding="
文字エンコーディング"?>
文書のタイトル
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
...その他文書情報...</head>
<body>
...本文...</body>
</html>