HTML ファイルの雛形(テンプレート)

ひな形(テンプレート)

最小限のテンプレート

<!DOCTYPE html>
<meta charset="UTF-8">
<title>Page Title</title>
<p>Hello HTML5!</p>

HTML5 では、htmlheadbody タグの記述を省略できるので、上記のような簡潔な記述でも正しい HTML 文書となります。

CSS や JavaScript コードを追記したバージョン

<!DOCTYPE html>
<meta charset="UTF-8">
<link rel="stylesheet" href="style.css">
<title>Page Title</title>
<style>
  body {
    background-color: khaki;
  }
</style>

<p>Hello HTML5!</p>
<script>
  document.write('Goodbye!');
</script>

style タグも、script タグも、基本は属性なしで記述できます。

あまり省略しないバージョン

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="style.css">
    <title>Page Title</title>
    <style>
      body { background-color: khaki; }
    </style>
  </head>
  <body>
    <p>Hello HTML5!</p>
    <script>
      document.write('Goodbye!');
    </script>
  </body>
</html>

HTML5 の各要素の省略について

HTML5 では、簡潔な記述が行えるように、様々な省略記法が用意されています。

DOCTYPE

HTML5 では、DOCTYPE は以下のように簡単に記述できるようになりました。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html>

本当は DOCTYPE 自体を削除することも検討されたのですが、Internet Explorer がうまくモード認識できないことがあるということで、最低限の宣言だけ残されています。 DTD は誰も使わないのでなくなりました。

html、head、body 要素の省略

htmlheadbody タグの記述は省略できます。 記述の省略はできますが、もちろん内部的には DOM ツリー上にこれらの要素は存在しています。

Charset

Charset の定義は、以下のように簡単になりました。

<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta charset="UTF-8">

style 要素

style 要素の type 属性は省略できるようになりました。 また、media タイプは省略すると all として処理されます。

<style type="text/css" media="all"> ... </style>
<style> ... </style>

script 要素

JavaScript のコードを記述するとき、script 要素に type="text/javascript" という属性が必要でしたが、省略するとデフォルトで text/javascript と判断されるようになりました。

<script type="text/javascript"> ... </script>
<script> ... </script>

W3C の資料に下記のように記載があります。

The default, which is used if the attribute is absent, is “text/javascript”.