LoginSignup
11
14

More than 5 years have passed since last update.

DOCTYPE宣言について

Last updated at Posted at 2015-12-29

DOCTYPE宣言とは

その文書がHTMLやXHTMLのどのバージョンで作成されているかを宣言するものです。
Document Type Definition、DTD、文書型宣言とも言われます。

HTML5ではDOCTYPE宣言は不要といえば不要なのですが、ブラウザの表示モードを標準モードにする目的では必要になります。DOCTYPE宣言が書かれていない場合は(後方)互換モードになってしまいます。

※標準モード
HTMLの標準仕様に準拠したページを表示させるためのモード。

※(後方)互換モード
HTMLの文法が無視されていた古い時代のページを表示させるためのモード。
このモードは昔のブラウザの独自仕様に合わせた表示をするモードでありCSSの解釈が標準と異なるため、制作者の意図しないレイアウトになる恐れがあります。

記述場所

文書の先頭

書き方

基本形は以下の通りになります。

<!DOCTYPE html>

大文字小文字の区別はされないので、以下のように書いても構いません。

<!DOCTYPE HTML>
<!doctype html>

なお、<!DOCTYPEの部分は続けて書く必要があり、

< !DOCTYPE
<! DOCTYPE

のように書くことはできません。

また、HTML5であっても一応HTML4.01 StrictやXHTML1.0 StrictなどのDOCTYPE宣言を使用できるらしいです。

おまけ:HTML4.01の場合

Strict(厳密型) DTDの場合

非推奨要素、非推奨属性、フレームが使用できません。
cssを理解している人向けで、スタイルを全てcssで設定していれば問題ありません。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Transitional(移行型) DTDの場合

非推奨要素と非推奨属性は使用できますが、フレームは使用できません。
htmlにスタイルを突発的に追加することがあるならこの宣言。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Frameset(フレーム設定型) DTDの場合

全て使用可能です。
フレームを使用したファイルに使用する宣言です。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
11
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
14