---------------- 以下コンテンツ部分 ----------------

DOCTYPE宣言とブラウザ解釈


DOCTYPEスイッチによる振り分け

ブラウザに搭載されているDOCTYPEスイッチは以下の項目で判断しているようです。

  1. DOCTYPE宣言
  2. XML宣言(文頭に記述するためIEで影響してしまう)
  3. システム識別子の有無

HTMLからみたDOCTYPEスイッチ

ブラウザのDOCTYPEスイッチ --文書型宣言に着目した表 --
文書型宣言 XML宣言 システム
識別子
DOCTYPEスイッチが
2種類のブラウザ
スイッチが
3種類のブラウザ
WinIE6 MacIE5 Opera7/8 Firefox Safari
必要なし 互換 互換
HTML 4.01 Strict 必要なし あり 標準 標準
HTML 4.01 Transitional 必要なし あり 標準 ほぼ標準
互換 互換
HTML 4.01 Frameset 必要なし あり 標準 ほぼ標準
互換 互換
XHTML 1.0 Strict あり あり 互換 標準 標準
標準
XHTML 1.0 Transitional あり あり 互換 標準 ほぼ標準
標準
XHTML 1.0 Frameset あり あり 互換 標準 ほぼ標準
標準
XHTML 1.1 あり あり 互換 標準 標準
標準

ブラウザから見たDOCTYPEスイッチ

ブラウザのDOCTYPEスイッチ --モードに着目した表 --
DOCTYPEスイッチが
2種類用意されているブラウザ
IE、Opera
過去互換モード(Quirks)
(1) DOCTYPE宣言なし
(2) HTML 4.01 Transitional
(公開識別子)
(9) XHTML 全般
(XML宣言+公開識別子システム識別子)
標準モード(Standard)
(3) HTML 4.01 Transitional
(公開識別子システム識別子)
(4) HTML 4.01 Strict
(公開識別子)
(5) HTML 4.01 Strict
(公開識別子システム識別子)
(6) XHTML 1.0 Transitional
(公開識別子システム識別子)
(7) XHTML 1.0 Strict
(公開識別子システム識別子)
(8) XHTML 1.1
(公開識別子システム識別子)
DOCTYPEスイッチが
3種類用意されているブラウザ
firefox、Safari
過去互換モード(Quirks)
(1) DOCTYPE宣言なし
(2) HTML 4.01 Transitional
(公開識別子)
ほぼ標準モード
(Almost Standard)
(3) HTML 4.01 Transitional
(公開識別子システム識別子)
(6) XHTML 1.0 Transitional
(公開識別子システム識別子)
標準モード(Full Standard)
(4) HTML 4.01 Strict
(公開識別子)
(5) HTML 4.01 Strict
(公開識別子システム識別子)
(7) XHTML 1.0 Strict
(公開識別子システム識別子)
(8) XHTML 1.1
(公開識別子システム識別子)
(9) XHTML 全般
(XML宣言+公開識別子システム識別子)
振り分けの対象としたDOCTYPE宣言
(1) DOCTYPE宣言なし
(2) HTML 4.01 Transitional
(公開識別子)
(3) HTML 4.01 Transitional
(公開識別子システム識別子)
(4) HTML 4.01 Strict
(公開識別子)
(5) HTML 4.01 Strict
(公開識別子システム識別子)
(6) XHTML 1.0 Transitional
(公開識別子システム識別子)
(7) XHTML 1.0 Strict
(公開識別子システム識別子)
(8) XHTML 1.1
(公開識別子システム識別子)
(9) XHTML 全般
(XML宣言+公開識別子システム識別子)

DOCTYPE宣言に関するメモ

  • XHTML の DOCTYPE 宣言は必ず「公開識別子+システム識別子」で書く。
  • XHTML の XML 宣言は、ソースの文字コードが UTF-8, UTF-16 以外の時は必須。
  • DOCTYPE 宣言の出現以前に半角空白または改行以外の文字が存在する場合、WinIEで互換モードになってしまう。
    そのため、XML 宣言のある XHTML の場合は、WinIEで互換モードになる。(IEのバグ)
  • DOCTYPE宣言が正しくなければ、DOCTYPE宣言していないものとして扱われる。

参考サイト


---------------- 以上コンテンツ部分 ----------------

各ページの内容には万全を期してはいますが、(1)私の解釈の間違い (2)参考にしたソースの間違い (3)情報が古くなったことによる間違い、の可能性が常にあります。内容の信頼性は各人の判断に委ねます。

また、あるサイトからあるサイトへリンクをはる場合、サイト運営者の許可は不必要だと考えます。したがって、当サイトへのリンクは自由ですが、URLはトップページ以外常に変わる可能性があります。

デジタルメディアである以上、コピー&ペーストを制限することはできないとあきらめていますが、著作権を放棄したわけではありません。

InternetExplorerでも問題なく見れると思いますが、FireFoxでみることをおすすめします。

Another HTML-lint