Frontend Academy · レッスン

セマンティックタグ: header、nav、main、article、footer

意味を持たないdivをセマンティックなHTML5要素に置き換え、それらがブラウザー、検索エンジン、スクリーンリーダーに役立つ仕組みを理解します。

レッスン 2/413 ステップ

「セマンティックタグ: header、nav、main、article、footer」はCoddyKit上の無料Frontend Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはFrontend Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Frontend Academyコースには全4レッスンが含まれています。

セマンティックHTMLとは

セマンティックHTMLは、見た目だけでなくコンテンツの意味を表す要素を使用します。<article>は「これは独立したひとまとまりのコンテンツです」という意味です。一方、汎用的な<div>からは何も読み取れません。

セマンティクス以前:Div Soup

初期のWeb開発者は、<div>と<span>要素だけでレイアウト全体を構築していました。スクリーンリーダーは、ナビゲーションとコンテンツ、広告を区別できませんでした。検索エンジンは、ページ構造を推測する必要がありました。

<!-- Old way -->
<div class="header">...</div>
<div class="nav">...</div>
<div class="content">...</div>
<div class="footer">...</div>

&lt;header&gt; — サイトまたはセクションのヘッダー

<header>要素には、ページまたはセクションの導入コンテンツを含めます。通常は、ロゴ、サイト名、ナビゲーションなどです。1つのページに複数のヘッダーを置くこともできます。サイト用に1つ、各記事に1つずつ配置することも可能です。

<header>
  <a href="/"><img src="logo.svg" alt="CoddyKit"></a>
  <nav>...</nav>
</header>

&lt;nav&gt; — ナビゲーションリンク

<nav>は、ナビゲーションリンクのまとまりを囲むために使用します。メインメニュー、パンくずリスト、目次などが該当します。スクリーンリーダーはnavランドマークを通知するため、ユーザーはそこへ直接移動したり、通り過ぎたりできます。

<nav aria-label="Main navigation">
  <ul>
    <li><a href="/">Home</a></li>
    <li><a href="/courses">Courses</a></li>
    <li><a href="/about">About</a></li>
  </ul>
</nav>

&lt;main&gt; — 主要コンテンツ

1ページにつき<main>は1つだけにしてください。そのページ固有の主要なコンテンツを含め、ナビゲーションやフッターのような繰り返し要素は含めません。支援技術を使うユーザーは、mainへ直接移動できます。

<main>
  <h1>Learn Frontend Development</h1>
  <p>Start your journey here...</p>
</main>

&lt;article&gt; — 独立したコンテンツ

<article>は、それだけで意味が通り、配信や転載が可能なコンテンツを囲みます。ブログ記事、ニュース項目、ユーザーコメント、商品カードなどが該当します。「別のサイトにコピーしても意味が通るか?」と考えてみてください。

<article>
  <h2>Introduction to CSS Grid</h2>
  <p>CSS Grid revolutionised web layout...</p>
  <time datetime="2025-01-15">January 15, 2025</time>
</article>

&lt;section&gt; — テーマごとのグループ化

<section>は、章、タブ、トピック領域など、関連するひとまとまりのコンテンツをグループ化します。通常、各セクションには見出しを付けます。コンテンツが単独で成り立つ場合は、articleを使用してください。

<section>
  <h2>Core Technologies</h2>
  <p>HTML, CSS, and JavaScript...</p>
</section>

&lt;aside&gt; — 補足コンテンツ

<aside>には、周囲のコンテンツと間接的に関連する内容を含めます。サイドバー、抜粋、広告、関連リンクなどが該当します。スクリーンリーダーは、これを補足的なランドマークとして示します。

&lt;footer&gt; — 締めくくりのコンテンツ

<footer>には、それを含む要素に関する情報を含めます。著作権表示、連絡先リンク、関連ドキュメントなどが該当します。headerと同様に、1つのページに複数のフッターを置くこともできます。

<footer>
  <p>&copy; 2025 CoddyKit. All rights reserved.</p>
  <nav aria-label="Footer">
    <a href="/privacy">Privacy</a>
    <a href="/terms">Terms</a>
  </nav>
</footer>

見出しの階層:h1からh6まで

見出しを使って、論理的なドキュメント構造を作成してください。1ページに<h1>は1つだけにします。小見出しにはh2、その下位の見出しにはh3というように使用します。レベルを飛ばしたり、見た目の大きさだけを理由に見出しを使ったりしないでください。

SEOとA11yでセマンティクスが重要な理由

検索エンジンは、セマンティックな構造を使ってページの内容を理解します。適切なランドマークと見出しの階層を備えたページは、検索順位が高くなることがよくあります。スクリーンリーダーのユーザーはランドマークや見出しを使って移動するため、セマンティクスはアクセシビリティに直接関わります。

クイックチェック

ページの主要な固有コンテンツ(1ページに必ず1つだけ存在するもの)を囲むべき要素はどれですか?

振り返り:セマンティックHTML5ランドマーク

<header>、<nav>、<main>、<article>、<section>、<aside>、<footer>を使うと、ブラウザー、検索エンジン、スクリーンリーダーが理解できる構造をドキュメントに与えられます。

無料で開始

AI チューターと学ぶ HTML — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
41
レッスン
163

よくある質問

「セマンティックタグ: header、nav、main、article、footer」レッスンは無料ですか?

はい。「セマンティックタグ: header、nav、main、article、footer」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Frontend Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Frontend Academyコースには全4レッスンが含まれています。

「セマンティックタグ: header、nav、main、article、footer」で何を学びますか?

意味を持たないdivをセマンティックなHTML5要素に置き換え、それらがブラウザー、検索エンジン、スクリーンリーダーに役立つ仕組みを理解します。 ブラウザで直接実行するハンズオンコードでFrontend Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Frontend Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのFrontend Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「セマンティックタグ: header、nav、main、article、footer」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このFrontend Academyレッスンでコードを書いて実行できますか?

はい。すべてのFrontend Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ドキュメント構造: DOCTYPE、html、head、body
  2. セマンティックタグ: header、nav、main、article、footer
  3. テキスト、画像、リンク、リスト
  4. フォーム: input、label、button
← Frontend Academyに戻る