HTMLのDOCTYPE宣言とは?書き方と意味を解説

HTML DOCTYPE宣言の書き方と意味を初心者向けに解説。<!DOCTYPE html>がなぜ必要なのか、書かないとブラウザが互換モードになる問題、HTML5での正しい書き方をコード例でわかりやすく学べます。中高生向け。無料・登録不要。

2026年4月16日

HTML DOCTYPE とは?

HTMLファイルの一番最初に書く <!DOCTYPE html> を見たことがありますか?これが DOCTYPE宣言(ドックタイプせんげん) です。

DOCTYPE宣言は「このファイルはHTML5で書かれています」とブラウザに伝えるための宣言です。タグではなく、ブラウザへの指示文です。

HTML5での書き方

現在のHTML5では、DOCTYPE宣言はとてもシンプルです。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="UTF-8">
    <title>ページタイトル</title>
  </head>
  <body>
    <!-- ページの内容 -->
  </body>
</html>

<!DOCTYPE html> は必ずHTMLファイルの 1行目 に書きます。

なぜDOCTYPE宣言が必要なの?

DOCTYPE宣言がないと、ブラウザが 後方互換モード(Quirksモード) で動作します。後方互換モードでは、古いブラウザの動作に合わせた表示になり、CSSが意図通りに効かないことがあります。

DOCTYPE宣言を書くことで、ブラウザが 標準モード で動作し、現代のHTML・CSSの仕様通りに表示されます。

💡 ポイント:

  • DOCTYPE宣言はHTMLファイルの1行目に必ず書く
  • 大文字・小文字は区別しない(<!doctype html> でもOK)
  • HTML5では <!DOCTYPE html> だけでOK(以前は長い記述が必要だった)

🔥 HTMLとCSSの違いで実践してみましょう。

DOCTYPEの歴史

DOCTYPE宣言は、HTMLのバージョンによって書き方が大きく違いました。

バージョンDOCTYPE宣言特徴
HTML4 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> とても長い。URLの指定が必要だった
XHTML <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> さらに厳密なルール。タグの閉じ忘れはエラーになった
HTML5 <!DOCTYPE html> たった15文字。シンプルで覚えやすい

HTML5 になって DOCTYPE宣言がとてもシンプルになりました。昔のHTMLを見かけたときに「長いDOCTYPEだな」と思ったら、それは古いバージョンのHTMLです。今は <!DOCTYPE html> だけでOKです。

💡 HTMLアクセシビリティで基礎を確認できます。

DOCTYPEを書き忘れるとどうなる?

DOCTYPE宣言を書き忘れると、ブラウザはQuirksモード(クァークスモード)という特殊なモードで動作します。

Quirksモードとは

Quirksモードは、1990年代の古いブラウザの動作を再現するモードです。このモードでは、CSSの解釈が現代の標準と異なるため、以下のような問題が起きます。

  • ボックスモデルの計算が変わるwidth に padding と border が含まれる(標準モードでは含まれない)
  • フォントサイズの継承が変わる:テーブル内の文字サイズが意図通りにならない
  • 中央揃えが効かないmargin: 0 auto が効かないことがある

確認方法

ブラウザの開発者ツール(F12)のコンソールに以下を入力すると、現在のモードを確認できます。

document.compatMode
// "CSS1Compat" → 標準モード ✅
// "BackCompat" → Quirksモード ❌

よくある間違い

  • DOCTYPE宣言の前に空行やコメントを書く:一部の古いブラウザでは、DOCTYPE宣言の前に何かがあるとQuirksモードになることがあります。<!DOCTYPE html> は必ずファイルの1行目に書きましょう。
  • DOCTYPE宣言を閉じタグで書く</!DOCTYPE html> と書くのは間違いです。DOCTYPE宣言は閉じタグがありません。
  • HTMLタグと混同する:DOCTYPE宣言はHTMLタグではなく、ブラウザへの指示文です。<html> タグの前に書きます。

🔗 あわせてHTMLフォームの作り方もチェックしてみましょう。

DOCTYPEに関するよくある疑問

DOCTYPEについて、初心者がよく持つ疑問に答えます。

疑問1:DOCTYPEを書き忘れるとどうなる?

DOCTYPEがないと、ブラウザは「互換モード(Quirks Mode)」で表示します。互換モードでは、CSSの計算方法が変わったり、余白の扱いが違ったりします。見た目が崩れる原因になるので、必ず書きましょう。

疑問2:大文字と小文字はどちらでもいい?

はい、どちらでも動きます。「DOCTYPE」でも「doctype」でも「Doctype」でも大丈夫です。ただし、慣例として大文字で書くことが多いです。

疑問3:HTMLのバージョンは指定しなくていい?

HTML5以降は「<!DOCTYPE html>」だけで十分です。昔のHTML4やXHTMLでは長いDOCTYPE宣言が必要でしたが、今は短い形で書けます。新しくページを作るときは、常にこの短い形を使いましょう。

疑問4:DOCTYPEはHTMLタグの一部?

いいえ、DOCTYPEはHTMLタグではありません。ブラウザへの「指示」です。そのため閉じタグもありません。HTMLの構造(htmlタグ、headタグ、bodyタグ)とは別のものだと覚えておきましょう。

HTMLの基本的な構造をもっと詳しく知りたい人は「HTMLとは?初心者向けにわかりやすく解説」を読んでみてください。タグの書き方やページの骨組みを学べます。

DOCTYPEを正しく書いたら、次はページの中身を充実させましょう。headerやmainなどのセマンティックタグを使うと、ページの構造がわかりやすくなります。詳しくは「セマンティックタグとは」で解説しています。

まとめ

  • <!DOCTYPE html> はHTMLファイルの1行目に書く
  • ✅ ブラウザに「HTML5で書かれています」と伝える宣言
  • ✅ 書かないとブラウザが後方互換モードで動作し、表示が崩れる可能性がある
  • ✅ HTML5では <!DOCTYPE html> だけでOK
  • ✅ HTML4やXHTMLでは長いDOCTYPE宣言が必要だったが、HTML5でシンプルになった
  • ✅ Quirksモードになっていないか、document.compatMode で確認できる

DOCTYPE宣言はHTMLの基本中の基本です。レッスンでさらに詳しく学んでみましょう。

🚀 HTMLをレッスンで学ぼう!

このサイトのHTMLコースでは、DOCTYPE宣言を含む実践的なページ作りをブラウザだけで学べます。無料・登録不要です。

HTMLコースを見る →
目次

コースで実際に手を動かして学ぼう

レッスンではコードを書きながら基礎が身につきます

HTMLコースを始める →

この記事に出てくる用語

📣 この記事が役に立ったら

Xでシェア

💬 引用する場合はこちらをご利用ください:

HTML DOCTYPE宣言の書き方と意味を初心者向けに解説。<!DOCTYPE html>がなぜ必要なのか、書かないとブラウザが互換モードになる問題、HTML5での正しい書き方をコード例でわかりやすく学べます。中高生向け。無料・登録不要。

出典: https://start-web-programming.com/blog/html-doctype/