文書型宣言と解釈モード
これについて認識が曖昧だったために、かなり迷走していました・・・。
- 文書型宣言
- HTMLファイルで使用しているHTMLのバージョン、および、それに準拠する度合いをあらわすもの。HTML文書ファイル先頭の<!DOCTYPE〜>宣言によって指定する。
- 解釈モード
- ページ描画方法について、W3C仕様準拠(Standards mode)(readmeでは「標準準拠」と記述)か、ブラウザ固有の古い仕様準拠(Quirks mode)(readmeでは「過去互換」と記述)かをあらわすもの。<!DOCTYPE〜>宣言の記述内容によって決定される。
詳しい説明は他のサイトにお任せします^^;
- <!DOCTYPE> - ドキュメントタイプ (とほほのWWW入門)
http://www.tohoho-web.com/html/doctype.htm
- 文書型宣言の意味 -- ごく簡単なHTMLの説明 (The Web KANZAKI)
http://www.kanzaki.com/docs/html/doctype.html#html-doctype
- DOCTYPE 宣言による「解釈モード」の切り替え (娘娘飯店しるきぃうぇぶ)
http://www.remus.dti.ne.jp/~a-satomi/bunsyorou/Doctype-Switch_situation.html
編集可能なサンプルHTMLとして提供する場合、HTMLバージョンの準拠の度合いは低く設定したほうがよいと考えます。その上で、ブラウザによる表示の差異を極力減らすために、解釈モードはW3C仕様準拠にしたほうがよいと考えます。
よって、Ver1.04では以下の宣言を採用しました。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> (W3C HTML4.0推奨準拠だが、古いバージョンの非推奨項目も含む場合。識別子があるため解釈モードはW3C仕様準拠となる)
Ver1.0のW3C XHTML1.0推奨厳密準拠、Ver1.02のW3C HTML4.0推奨厳密準拠よりも、こちらのほうが妥当かと思います。
【参考サイト】2006/10/20追記。
W3C準拠派 vs 臨機応変派に分かれて議論をお願います。 はたして… - 人力検索はてな