HTMLの1行目には、必ず「<!DOCTYPE html>」と書き、これをDOCTYPE宣言と言います。
このページでは、DOCTYPE宣言とは何かを説明します。
DOCTYPE宣言とは
DOCTYPE宣言は、文書がどの言語で作成されたかを宣言するためのものです。
なので、バージョンによって書き方が違います。
HTML5の場合は、「<!DOCTYPE html>」と書きます。
DOCTYPE宣言は、文書型宣言ともいいます。
HTML5以外のDOCTYPE宣言
HTML4.01
Strictの場合は、「<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”>」と書きます。
Strictにすると、非推奨要素や非推奨属性,フレームが使用できなくなります。
Transtionalの場合は、「<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>」と書きます。
Transitionalにすると、フレームが使用できなくなります。
Framesetの場合は、「<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN” “http://www.w3.org/TR/html4/frameset.dtd”>」と書きます。
XHTML1.0
Strictの場合は、「<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>」と書きます。
Transitionalの場合は、「<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>」と書きます。
Framesetの場合は、「<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>」と書きます。
HTML3.2
「<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 3.2 Final//EN”>」と書きます。
DOCTYPE宣言の省略
DOCTYPE宣言を書かなくてもほとんどのブラウザでは正確に表示されますが、互換モードで表示されます。
ただし、省略した場合は、文法的には誤りとなります。