<!DOCTYPE>
タグの分類 | 非タグ | 定義バージョン | Strict, Transitional, Frameset |
---|---|---|---|
開始タグ | html開始タグの前に記述 | 終了タグ | 要素ではないので不要 |
用例 |
|
<!DOCTYPE>とは
「!DOCTYPE」とは文書の解釈に使うDTDを宣言するもので、正確に言えばHTMLのタグではありません。HTML文書を作成するとき、HTMLタグよりも先頭にまず書くべきなのが DOCTYPE 宣言です。
「DTD」とは「Document Type Definition」のことで、「文書型の定義」を意味します。HTMLのバージョンごとに、そのバージョンで使用できる要素(タグ)や属性の名前などの情報が定義されています。
たとえば、「<!DOCTYPE HTML」と記されている場合は、これからDTDを宣言することを示し、その文書タイプが「HTML」であるという意味です。
HTMLはSGML(Standard Generalized Markup Language)にもとづいて作られた言語であり、DOCTYPE宣言やDTDはSGMLに由来するものです。
多くのWebブラウザはDOCTYPE宣言の有無やその内容に応じて、標準準拠モード、おおむね標準準拠モード、互換モードといった異なる方法で文書を表示します。このDOCTYPEによる表示方法の切り替えはDOCTYPEスイッチと呼ばれています。
HTML5からのHTMLは、SGMLにもとづいた言語ではなくなりました。そのためHTML4までとは違って、DTDの指定が必要ありません。ただしDOCTYPE宣言自体は、DOCTYPEスイッチによってブラウザを標準準拠モードで動作させるため、HTML5でも必要とされています。