{{ariaref}}
navigation
ランドマークロールは、ウェブサイトまたはページコンテンツをナビゲートするために使用される主要なリンクのグループを識別するために使用されます。
<div role="navigation" aria-label="メインナビゲーション">
<!-- 主要なウェブサイトの場所へのリンクのリスト -->
</div>
これはウェブサイトのメインナビゲーションです。
説明
navigation
ロールはランドマークロールです。 ランドマークロールは、ウェブページの構成と構造を識別する方法を提供します。 ページのセクションを分類およびラベル付けすることにより、レイアウトを通じて視覚的に伝達される構造情報がプログラム的に表されます。 スクリーンリーダーは、ランドマークロールを使用して、ページの重要なセクションにキーボードナビゲーションを提供します。 HTML の <nav>
要素と同様に、navigation
ランドマークは、ウェブサイトまたはページコンテンツのナビゲーション(navigation)に使用するリンクのグループ(例えば、リスト)を識別する手段を提供します。 ページに複数の navigation
ランドマークが含まれている場合は、それぞれが固有のラベルを持つべきです。 ページ上の2つ以上のナビゲーションに関するランドマークが同じリンクのセットを持つ場合は、それぞれに同じラベルを使用します。
navigation
ランドマークを定義するには、HTML5 の <nav>
要素を使用することをお勧めします。 HTML5 の <nav>
要素のテクニックが使用されていない場合は、role="navigation"
属性を使用して navigation
ランドマークを定義します。
<nav>
要素を使用すると、自動的にセクションが navigation
ロールを持つことを伝えます。 開発者は、ARIA を使用するよりも正しい意味論の HTML 要素を常に使用するべきです。
関連する WAI-ARIA のロール、ステート、プロパティ
- aria-label
- ナビゲーションの目的を簡単に説明します。 スクリーンリーダーはロールとラベルの内容の両方を読むので、"navigation" という用語を省略します。
キーボードインタラクション
無し
必要な JavaScript 機能
無し
例
<div role="navigation" aria-label="顧客サービス"> <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> <li><a href="#">お店を探す</a></li> </ul> </div>
アクセシビリティに関する懸念
ランドマークロールは、文書のより大きな全体的なセクションを識別するために、控えめに使用することを意図しています。 あまりにも多くのランドマークロールを使用すると、スクリーンリーダーで「ノイズ」が発生し、ページ全体のレイアウトを理解することが難しくなります。
ベストプラクティス
好ましい HTML
<nav>
要素を使用すると、自動的にセクションが navigation
ロールを持つことを伝えます。 可能であれば、<nav>
を代わりに使用することをお勧めします。
ランドマークのラベル付け
複数のランドマーク
文書に複数の navigation
ランドマークロールや <nav>
要素がある場合は、各ランドマークに対してラベルを指定します。 このラベルで、支援技術のユーザーがそれぞれのランドマークの目的をすばやく理解することができます。
<div id="main-nav" role="navigation" aria-label="メイン">
<!-- コンテンツ -->
</div>
...
<nav id="footer-nav" aria-label="フッター">
<!-- コンテンツ -->
</nav>
繰り返されるランドマーク
文書内の navigation
ランドマークロールまたは <nav>
要素が文書内で繰り返され、両方のランドマークのコンテンツが同じ場合は、各ランドマークに同じラベルを使用します。 この例では、ページの上部と下部でメインナビゲーションが繰り返されています。
<header>
<nav id="main-nav" aria-label="メイン">
<!-- 主要なウェブサイトの場所へのリンクのリスト -->
</div>
</header>
...
<footer>
<nav id="footer-nav" aria-label="メイン">
<!-- 主要なウェブサイトの場所へのリンクのリスト -->
</nav>
</footer>
冗長な説明
スクリーンリーダーは、ランドマークロールの種類をアナウンスします。 このため、ラベルでランドマークが何であるかを説明する必要はありません。 例えば、aria-label="主要なナビゲーション"
の role="navigation"
の宣言は、"navigation 主要なナビゲーション" として重複してアナウンスすることができます。
追加された利点
ブラウザー拡張などの特定の技術は、ページ上に存在する全てのランドマークロールのリストを生成することができ、非スクリーンリーダーユーザーは文書の大きなセクションを素早く識別してナビゲートできます。
- ランドマークブラウザー拡張(英語)
仕様
仕様 | 状態 |
---|---|
Accessible Rich Internet Applications (WAI-ARIA) 1.1 ARIA Navigtion Role の定義 |
勧告 |
Unknown Navigation Landmark Role の定義 |
不明 |
スクリーンリーダーのサポート
TBD
関連情報
<nav>
: ナビゲーションセクション要素- navigation (role): Accessible Rich Internet Applications (WAI-ARIA) 1.1
- HTML5 ドキュメントのセクションとアウトライン
- ランドマークロール: ARIA を使用する: ロール、ステート、プロパティ
- Using WAI-ARIA Landmarks – 2013 | The Paciello Group
- Accessible Landmarks | scottohara.me
- Semantic navigation with the nav element | HTML5 Doctor