1.概要
文書型宣言は、
SGMLやXML, HTML文書を、
文書型定義(DTD)と
結びつけるための宣言です。
<!DOCTYPE html>
<html lang=
"ja"> <head>
</head>
<body>
</body>
</html>
DTD
とは、Document
文書型<!doctype html>
とか <!DOCTYPE HTML>
でも同じです。
HTML5はSGMLベースではなくなったので、文書型定義
2.マークアップ宣言
マークアップ宣言は、
マークアップの
解釈方法を
指定します。
マークアップ宣言は SGML由来であり、
<!DOCTYPE HTML PUBLIC "-//W3C//
DTD HTML 4.01//EN" "http://www.w3.org/ TR/html4/ strict.dtd">
<!
: マーク宣言開始 区切り子 DOCTYPE
: 宣言の種類(文書型宣言)HTML
: 文書型名(ルート要素名)PUBLIC
: 外部識別子(外部に公開されている文書を参照。DTDを記述する方法もある。)"-//W3C//
: 公開識別子(参照する文書)DTD HTML 4.01 "//EN -//
: 所有者識別子W3C -//
: 未登録所有者 (+// :識別子 登録がある) W3C
: 所有者(W3C)
//
: 区切り子DTD
: 文書識別子HTML 4.01 //EN DTD
: 公開文書 種別 HTML 4.01
: 公開文書 記述 //
: 区切り子EN
: 公開文書 (英語)言語
"http://www.w3.org/
: システム識別子 (DTD の所在を示す URI)TR/html4/ "strict.dtd >
: マーク宣言終了 区切り子
HTML5
<!DOCTYPE html>
HTML5はSGMLベースではなくなったので、文書型定義
記述を省略した場合は互換
HTML4.01 Strict
<!DOCTYPE HTML PUBLIC "-//W3C//
DTD HTML 4.01//EN" "http://www.w3.org/ TR/html4/ strict.dtd">
HTML4.01 の厳密型です。W3Cが非推奨とする要素と属性は使えません。フレームも使えません。システム
HTML4.01 Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//
DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ TR/html4/ loose.dtd">
HTML4.01 の移行型です。W3Cが非推奨とする要素と属性が使えますが、フレームは使えません。システム
HTML4.01 Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//
DTD HTML 4.01 Frameset//EN" "http://www.w3.org/ TR/html4/ frameset.dtd">
HTML4.01 のフレーム設定です。W3Cが非推奨とする要素と属性が使えますし、フレームも使えます。システム
3.DOCTYPEスイッチ
文書型宣言によって、
CSSの認識や
表示の仕方に
違いがあります。
文書型宣言によって、CSSの認識や表示の仕方を
HTML5では文書型宣言の有無, HTML4.01ではシステム