公私ともにHTML4からXHTML[Transitional]への書き換えを行う機会も増えてきたことなのでおぼえがき。
詳細は記述せずに作業の目安程度に。
- DTD
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
なおXHTML1.0[strict]の場合は
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
である。 - キャラクタエンコーディングの指定
xmlとhttp-equivの双方で行う(xml優先)
<?xml version="1.0" encoding="utf-8"?>
※DTDより先。つまり1行めで宣言
※文字コードは環境にあわせる
<meta http-equiv="Content-type" content='text/html; charset="utf-8"' />
- 要素名、属性名は小文字
タグやその中の属性は小文字で書く。
誤:<A HREF
正:<a href
手打ちしているならこういうことはまずないけど、”よろしくない”アプリケーションで横着してたり、アフィリエイトサイトなどで自動生成されるコードをはっつけていると紛れ込んでることが。 - 終了タグは省略できない
<p>終了タグ⇒</p>
逆に手打ちしてると発生するパターン。はい、私もHTMLコードよくわかってないすんごい昔は<p>だけ打ってました。 - 属性値は引用符で括る
誤:<img width=256 src=
正:<img widht=”256″ src=
これもあまりない間違いか、と。 - 属性は最小化できない
誤:<dl compact>
正:<dl compact=”compact”>
これは要修正かも。他に<input checked=”checked”>など。 - 空タグを閉める
<br /> <hr />など。その他ヘッダ内の<meta ……. />なども該当。 - スクリプトの記述の仕方
スクリプトを非対応ブラウザ用にコメント化するようにしているわけだけど、XHTMLではスクリプト要素・スタイル要素は違うかたちで認識されるので、多少記述の変更が必要になる。
<script>
<![CDATA[
スクリプト本体
]]>
</script> - name属性はid属性に
name属性は将来的に廃止予定なのでid属性に書き換える。
<a name など。 - 名前空間xmlnsの宣言とlang属性とxml:lang属性
言語指定にはlangとxml:langの双方を使用する(xml:lang優先)。だいたいタグごとに言語指定することはないだろうから
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
としておけばOKかと。 - &は & (アンパサンド)と厳密に記述する。
URLで引数を渡している部分に修正箇所多し。