フォーカス順序内の要素は適切な役割を持つ必要がある
修正方法
フォーカス順序内のすべての要素に適切な role
属性値があることを確認し、要素がカスタムウィジェットの場合は、有効なARIAロール属性値が適用されていることを確認してください。
デバイスに依存しないすべてのユーザー入力方法に、フォーム コンテンツとの対話を可能にする適切な役割があることを確認します。
ロールがまったく存在しない場合、要素にフォーカスを当てても、スクリーン リーダーは何も読み上げません。
対話型要素に段落などの不適切なロールを使用すると、要素はフォーカスを受け取らず、スクリーン リーダーは何も読み上げません。
ロールが、インタラクティブな要素になる可能性のあるロールのリスト (ボタン、テキスト入力、ラジオ オプション、チェックボックスなど) と一致する場合、ネイティブHTMLであれば追加のロールは必要ありませんが、カスタム ウィジェットの場合は、適切なARIAロールが必要です role="button"
。
スクリーン リーダーのユーザーが要素にアクセスし、その要素にテキストが含まれている場合、そのテキストは読み上げられますが、適切なロールがなければ、ユーザーにはその要素が何であるかがわかりません。
タイプ別に利用可能なロールは次のとおりです。
- ランドマーク: 記事、バナー、補足、メイン、ナビゲーション、リージョン、検索、コンテンツ情報
- ウィジェット: アラート、アラートダイアログ、アプリケーション、ダイアログ、グループ、ログ、マーキー、メニュー、メニューバー、メニュー項目、メニュー項目チェックボックス、メニュー項目ラジオ、プログレスバー、セパレーター、スライダー、スピンボタン、ステータス、タブ、タブリスト、タブパネル、タイマー、ツールバー、ツールチップ、ツリー、ツリーグリッド、ツリー項目
- 擬似HTML: ボタン、ボタン、チェックボックス、列ヘッダー、コンボボックス、contentinfo、フォーム、グリッド、グリッドセル、見出し、画像、リンク、リストボックス、リスト項目、オプション、ラジオ、ラジオグループ、行、行グループ、行ヘッダー、スクロールバー、テキストボックス、チェックボックス、列ヘッダー、コンボボックス、contentinfo、フォーム、グリッド、グリッドセル、見出し、画像、リンク、リストボックス、リスト項目、オプション、ラジオ、ラジオグループ、行、行グループ、行ヘッダー、スクロールバー、テキストボックス
- ドキュメント: ドキュメント (別の種類の領域内にドキュメント領域を作成する場合)
- アプリケーション: アプリケーション (ページ コンテンツの通常のキーボード ショートカットを有効にするウィジェットの周囲のみ)
- プレゼンテーション: プレゼンテーション(要素の本来の役割をキャンセルする)
- その他のセマンティック: math、定義、メモ、ディレクトリ
- 抽象: コマンド、複合、入力、ランドマーク、範囲、セクション、セクションヘッド、選択、構造、ウィジェット
なぜ重要なのか
フォーカス順序内の要素には、スクリーン リーダー テクノロジがユーザーに情報を伝達できるように、インタラクティブ コンテンツに適した役割が必要です。
インタラクティブなコンテンツ要素に適切なロールがない場合、そのロールは開発者が意図したアクセシビリティ機能を実行できません。
スクリーン リーダーやその他の支援技術がWebページ上の各要素の適切な役割を認識していない場合、要素をインテリジェントに操作できず、その役割をユーザーに伝えることもできません。ロールの値が有効でない場合、HTML要素の特性、プロパティ、およびユーザーとの情報伝達方法を支援技術を通じて伝えることはできません。
ルールの説明
ユーザー入力要素には、ネイティブHTMLかカスタム ウィジェットかを問わず、適切な役割があり、スクリーン リーダーのユーザーに、その要素に到達してフォーカスが与えられたときにその意味を伝える必要があります。カスタム ウィジェットの場合は、要素の目的を正しく公開するために、抽象ロールの代わりに適切なARIA(Accessible Rich Internet Applications) role
値を使用する必要があります。
仕組みについて (簡単に言うと)
フォーカス順序内のすべてのインタラクティブ要素をチェックし、ネイティブHTMLまたはカスタムARIAウィジェットのいずれであっても、ロール属性値が有効かつ適切であることを確認します。