HTMLの<main>
要素は、その内容がページ内の最も主要なコンテンツであることを表します。
mainタグの使い方
<body>
<header>
<p>サイトロゴ</p>
<nav>ナビゲーションリンク</nav>
</header>
<!-- 記事の内容をmainに -->
<main>
<article>
<h1>記事のタイトル</h1>
<p>記事の本文</p>
</article>
</main>
<footer>
<p>コピーライト情報</p>
</footer>
</body>
👆たとえばブログやWebメディアなら、記事の個別ページで主要なコンテンツに当たるのは記事の内容(記事のタイトルや本文、投稿日など) です。
サイト全体で固有のコンテンツに対して使用する
ブログの投稿内容はサイト全体を通して固有であり(記事ごとに内容が異なります)、<main>
に含めるのに最適と言えます。
🙅逆にサイト内のどのページでも共通して見られるもの(サイトのロゴ、ナビゲーションリンク、検索フォーム、コピーライト情報などが当てはまることが多い)は<main>
に含めるべきではありません。
🙅mainタグを1ページで複数回使ってはいけない
そのページの中で最も主要なコンテンツに対してのみ使用します。
😺ただしmain
タグにhidden
属性を指定している場合は除きます。
mainはセクショニング・コンテンツではない
<main>
要素はセクショニング・コンテンツ[1]ではありません。文章のセクションを作る(アウトラインを作る)目的であれば<article>
や<section>
を使うようにします。
😺articleやsectionは、main要素の中で使うことができます。
mainタグを使うメリット
スクリーンリーダーや読み上げソフト、検索エンジンなどのロボット(プログラム)が、ページの内容や構成を判断するときのヒントとなる可能性があります。
<article>
や<section>
のように文書に章、節、項のようなまとまり(アウトライン)を作るもの。
参考:セクショニング・コンテンツ ↩︎