ゼロからはじめるHTML5でのサイト制作/第3回 HTML5で新しく定義された新要素をまとめよう | デザインってオモシロイ -MdN Design Interactive-

ゼロからはじめるHTML5でのサイト制作/第3回 HTML5で新しく定義された新要素をまとめよう

2024.4.18 THU

【サイトリニューアル!】新サイトはこちらMdNについて

第3回 HTML5で新しく定義された新要素をまとめよう

HTML5になって新しく定義された新要素(タグ)が多くあります。今回は前回の使い方が変更になった要素の続きとして、新しく定義された新要素の中から新しくなったタグをまとめていきます。
video要素、audio要素などこれまでのプラグイン的な扱いの要素はいきなりでは難しいですし、ブラウザでの対応状況がまちまちで実際にすぐサイト制作に用いるということはまだあまりありませんので、まずは通常のページを作る際に使う要素をまとめてみたいと思います。

ただし、HTML5は仕様がまだ確定しておらず随時仕様変更などがありますので、現状は制作業務では無理に新要素を使わなければいけないということはありません。自分のサイトやブログなどで実験的に新要素で制作し、変更があれば随時更新していくような形で勉強していく形がよいのではないかと思います。

また、本連載では初心者からでも簡単にできるように、なるべく仕様にガチガチにならずにわかりやすい部分からHTML5を触れていこうという形で進めていければと思っております。


解説:(有)ムーニーワークス 林 豊/田崎一成


今回はHTML5からの新要素をまとめていきますが、HTML5では「カテゴリー」「コンテンツ・モデル」「アウトライン」という概念があります。こちらをやらずにいきなり新要素でよいのか?というように思われる方もいらっしゃると思いますが、こちらはいきなりでは難しく感じてしまいますので、それらは要素の紹介の後にまとめる予定です。そちらを先に理解してから新要素を知りたいという方は、ブログのほうにまとめておりますのでよかったらご覧ください。

『アウトライン』について|HTML5でサイトをつくろう
『コンテンツ・モデル』について|HTML5でサイトをつくろう
HTML5のカテゴリーについて|HTML5でサイトをつくろう



hgroup要素

hgroup要素は、セクションの見出しを表します。見出し(h1~h6要素)とそれに付随する小見出し・副題・キャッチフレーズ となる見出し要素(h1~h6要素)をグループ化するために使用します。見出しと関連する小見出しや副題をグループ化して使用するhgroup要素ですが、使用時に注意しなければならないポイントがあります。

主な特徴としては、
・hgroup要素内には、h1~h6要素以外の要素を使用することができない
・hgroup要素内の見出し要素は、レベルが最も高い要素以外はアウトラインに現れない
があげられます。

見出し要素をグループ化する際に使用します

HTML4やxhtmlでは見出しタグの順番は必ずh1から順番につけていましたが、HTML5ではブロックレベル要素からアウトラインという形に変わりましたのでhタグの順番は上のように必ずしもh1が上でなくても大丈夫ですが、デザイン的にサイト名の上に副題を入れたい場合はCSSで位置指定をしてあげて見た目の順番を変えるという方法もあるかとおもいます。
※アウトラインについては後日まとめます。
【hgroup要素】

<hgroup>
<h1>HTML5でサイトをつくろう</h1>  ←タイトルとして使用
  <h2>ゼロからはじめるHTML5でのサイト制作</h2>  ←副題として使用
</hgroup>
<p>本連載は、HTML5をはじめてやってみようという人に、HTML5のマークアップの基本から新要素の使い方、スマートフォンサイト作成などサンプルを作りながら学んでいきます。</p>

h1、h2などをまとめます
MdN Design Interactiveのサイトの場合
MdN Design Interactiveのサイトではbodyタグ開始後すぐにサイトの説明文を入れてサイトの内容を伝えたり、SEO対策の一環として入れるというサイトがよありますが、この場合はキャッチコピーを見出しとして使う場合はhgroup要素で囲みCSSで位置を調整するか、従来のようにキャッチコピーをp要素を使用して対応する場合はhgroup要素は使いません。
【hgroup要素】

<hgroup>
 <h1>MdN Design Interactive</h1>  ←タイトルとして使用
 <h2>Webデザインとグラフィックの総合情報サイト・・・</h2>  ←キャッチフレーズとして使用
</hgroup>

<p>Webデザインとグラフィックの総合情報サイト。プロのWebデザイナーやグラフィックデザイナーはもちろん、プロを目指す方のための情報を毎日更新。</p> 



<p>Webデザインとグラフィックの総合情報サイト・・・ </p>
<h1>MdN Design Interactive</h1>
<p>Webデザインとグラフィックの総合情報サイト。 プロのWebデザイナーやグラフィックデザイナーはもちろん、プロを目指す方のための情報を毎日更新。</p>

ロゴの上にキャッチフレーズを見せたい場合はCSSを使用して位置の調整を行うか、キャッチフレーズ部分を見出しとしてマークアップしない場合は、従来のようにpタグを使用してもよいと思います。

キャッチコピーを見出しにしない場合はhgroup要素は使わない
ブログの方にも『hgroup要素』についてまとめております。詳しくはこちらもご覧ください
『hgroup要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう

header要素

header要素はページや各セクションのヘッダーを表す場合に使用します。今までは‹div id="header"› ‹/div› などを使用していたと思いますが、それが‹header› ‹/header›という形に置き換えることができます。
主な特徴としては、

● header要素はページ内に複数使うことができる
● header要素は見出し要素を含むことを想定しているが、無い場合でも間違えではない
 (※必須ではありません)
● header要素はセクショニング・コンテンツではないため、アウトラインに現れることはない
 (※新たなセクションを表さない)
● header要素内にheader要素、footer要素を使うことはできない
● header要素は通常『ページ目次・サイトロゴ・検索フォーム』などを入れて使用する
があげられます。

サイトのロゴ周りやブログの記事の見出しなどに使います
作例のようにサイトのヘッダー部分に使うというのと、ブログなどでTOPページに5件の記事を表示する場合の記事のタイトル部分にheaderを使うこともできます。ブログ以外では記事内のどこがヘッダー部分に該当するか迷う場合は無理に使わずページ上部のヘッダー部分のみでもよいかと思います。
【header要素】

<header>
 <hgroup>
  <h1>HTML5でサイトをつくろう</h1>
  <h2>HTML5とCSS3の情報とサンプルをまとめました</h2>
 </hgroup>
 <nav>
  <ul>
  <li>HOME</li>
  <li><a href="#">SITEMAP</a></li>
  </ul>
 </nav>
</header>
<article>
 <header>
  <h1>『header要素』/ HTML5新要素一覧</h1>
  <p>Category : HTML5新要素一覧</p>
 </header>
 <section>
  <h2>Header要素</h2>
  <p>セクションのヘッダーを表す場合に使用します。</p>
   ・
 </section>
</article>

このように内容に応じて複数のheader要素を使うことができます
ブログの方にも『header要素』についてまとめております。
『header要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう

footer要素

footer要素はページや各セクションのフッターを表す場合に使用します。今までページの最下部のエリアを‹div id="footer"› ‹/div›などを使用していたと思いますが、それが‹footer› ‹/footer›という形に置き換えることができます。
主な特徴しては、

● footer要素はページ内に複数使うことができる
● footer要素はセクショニング・コンテンツではないため、アウトラインに現れることはない
 (※新たなセクションを表さない)
● footer要素内にheader要素、footer要素を使うことはできない
● footer要素の使用位置はページやセクションの最後でない場合も使用できる
● footer要素は通常『関連情報へのリンク・著者情報・著作権表記』などを入れて使用する

などがあります。

サイトの最下部フッターやブログの記事の下の補足事項などに使います
作例のようにサイトの最下部のフッター部分に使うというのと、ブログなどでTOPページに5件の記事を表示する場合の最後の日付やカテゴリを表示させるエリアにfooterを使うことも可能です。ブログ以外では記事内のどこがヘッダー部分に該当するか迷う場合は無理に使わずページ下部のフッター部分のみでもよいかと思います。
【footer要素】

<header>
  <h1>HTML5でサイトをつくろう</h1>
</header>
<article>
  <header>
    <h1>『footer要素』 / HTML5新要素一覧</h1>
  </header>
  <p>セクションのフッターを表す場合に使用します。</p>
    ・
    ・
  <footer>
    <p>Category:HTML5新要素一覧</p>
  </footer>
</article>
<footer>
  <ul>
    <li>プライバシーポリシー</li>
    <li>お問い合わせ</li>
    <li>サイトマップ</li>
  </ul>
  <p><small>COPYRIGHT ©HTML5でサイトを作ろう・・</small></p>
</footer>

このように内容に応じて複数のfooter要素を使うことができます
ブログの方にも『footer要素』についてまとめております。
『footer要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう

nav要素

nav要素は、ナビゲーションリンクを伴うセクションを表します。サイトやページの主要なナビゲーションに使用しなければなりません。すべてのリンクグループ(ナビゲーション)にnav要素を使ってはいけません。

例えば、nav要素はサイトにとって主要なナビゲーションであるグローバルナビゲーション等に使います。ページフッター内に設置されている補足的なナビゲーション等にはnav要素を使わずにfooter要素で対応しますが、この辺はサイト全体の中でのナビゲーションの内容にもよると思いますので一概には言えないかとも思います。

主な特徴として、

● nav要素はサイト内のサイトリンク・ページ内リンクの集まりを表す
● nav要素はサイトやページの主要なナビゲーションに使用する
 (※ページフッター内に設置されているナビゲーション等にはnav要素を使わずにfooter要素で対応する)
があります。

主要なナビゲーションに使用します

あくまで主要ナビゲーション部分をnavにするということですが主要の考え方はさまざまだとおもいますのでサイトの内容に合わせて設定するとよいでしょう。主要ナビゲーションには<nav>を設定し、主要でないナビゲーション部分は<nav>を使わないでマークアップする場合もあると思います。
【nav要素】

<nav>
  <ul>
    <li><a href="#">ホーム</a></li>
    <li><a href="#">ニュース</a></li>
    <li><a href="#">商品一覧</a></li>
    <li><a href="#">会社案内</a></li>
    <li><a href="#">お問い合わせ</a></li>
  </ul>
</nav>
    ・
    ・
  <footer>
    <ul>
      <li><a href="#">プライバシーポリシー</a></li>
      <li><a href="#">サイトマップ</a></li>
    </ul>
  </footer>

 ↑主要ナビゲーションと捕らえない場合はnavは使用しない
 
メニューをすべてnavにするということではありません
ブログの方にも『nav要素』についてまとめております。
『nav要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう

aside要素

aside要素は、メインコンテンツとは関連性が薄く、切り離すことができるコンテンツを表します。例えばサイト以外の広告のリンクやブログパーツや外部リンク集などに使用します。ブログなどでよくある「この記事を読んだ人にはこちらをオススメ」などはその記事に対して関連性がある内容の紹介になりますが、この部分がなくても記事が成り立つものとしてはasideにするなども考えられます。

主な特徴として、

● aside要素はメインコンテンツとは関連性の低い『補足記事・広告・ブログロール』などのメインコンテンツから切り離すことができるものに使用する
● aside要素はaside要素のコンテンツがなくなった場合にもページが成り立つものに使用するようになる
● aside要素は記述位置によって意味が変わってくる
 ※コンテンツ内で使用する場合は、何かしらコンテンツ内の情報と関連性があるもの、コンテンツ外で使用する場合は、何かしらサイトやページに関連性がある情報となる

などがあります。

メインコンテンツとは関連性が薄く、切り離すことができるコンテンツに使用します

作例が短いですがここでの記事はh2タグの「『aside要素』 / HTML5新要素一覧」のページとするとh3タグの「HTML5とは」はHTML5というカテゴリでは関連性は薄くはないですが、この作例では
の部分がなくても「『aside要素』 / HTML5新要素一覧」の記事は成り立つという部分でこのようにしています。この辺は原稿とページ意図によって製作者の判断になる部分かもしれません。
【aside要素】

<article>
      <h1>HTML5でサイトをつくろう</h1>
    <section>
      <h2>『aside要素』 / HTML5新要素一覧</h2>
      <p>aside要素はHTML5の新要素の一つです。</p>
      <aside>
        <h3>HTML5とは</h3>
        <p>HTML5は次世代HTML標準となる・・・・・</p>
      </aside>
      <p>aside要素でマークアップする場合はメインコンテンツとは関連性が薄く、切り離すことができるセクションに使用します。</p>
        ・
    </section>
</article>

定義リストにする場合はdt要素に定義語を表すdfn要素を用います
ブログの方にも『nav要素』についてまとめております。
『nav要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう

figure要素

キャプション付き図表(図面・写真・ソースコードなど)を表し、自己完結しているメイン・コンテンツから参照されるようなコンテンツを表します。
こちらはページの見せ方によってさまざまな考え方が出てくると思いますので、サイト全体を考えるて使う判断が難しい場合は無理して使う必要はないと思います。ブログの方に少しサンプルを追加しております。

主な特徴として、
● figure要素は自己完結型になるので、参照用の別ページにあった場合でもコンテンツが成立する内容に使用しなければならない
● figure要素のキャプションは必須ではない
● figure要素のキャプションを表すには、figcaption要素を使用する。
 またfigcaption要素はfigure要素の最初か最後に入れなければなならない
などがあります。

図画・写真・コードリストなど、自己完結しているメイン・コンテンツから参照されるようなコンテンツを表します
【figure要素】

<p>京都の三千院では、美しい紅葉が見られます。</p>
<figure>
  <img src="kouyou.jpg" alt="三千院の本堂から見える美しい紅葉" />
  <figcaption>三千院の紅葉</figcaption>
</figure>
<p>今年の紅葉は例年より色鮮やかとのことです。</p>

サイト全体を考えると使うタイミングが難しい印象があります
ブログの方にも『figure要素』についてまとめております。
『figure要素』 / HTML5新要素一覧 |HTML5でサイトをつくろう
今回は以上になります。

新要素の中で使い方がわかりにくい『section要素」と『article要素』についてですがこちらは次回まとめたいと思います。その後にHTML5での「カテゴリー」、「コンテンツ・モデル」、「アウトライン」についてまとめていきます。


profile
●ハヤシユタカ 1999年よりデジタルハリウッドでWEBコースの講師を担当、2001年に有限会社ムーニーワークスを立ち上げ、WEBの企画・制作、セミナー講師やWEB運用の企業研修などを行う。また、WEB制作に役立つ情報を集めて制作のヒントになるブログを更新している。

●HTML5でサイトをつくろう:
http://www.html5-memo.com/
●Webデザインクリップ:
http://webdesignmatome.com/
twitter facebook このエントリーをはてなブックマークに追加 RSS
【サイトリニューアル!】新サイトはこちらMdNについて

この連載のすべての記事

アクセスランキング

8.30-9.5

MdN BOOKS|デザインの本

Pick upコンテンツ

現在