インタラクティブコントロールはネストしてはいけません
ルールID:
nested-interactive
ルールセット:
axe-core 4.10
ユーザーへの影響:
ガイドライン:
WCAG 2.1 (A), WCAG 2.0 (A), WCAG 2.2 (A), Trusted Tester, EN 301 549
修正方法
正しいマークアップソリューション
対話型コントロール要素には、フォーカス可能な子孫があってはなりません。
<button>Submit</button>
誤ったマークアップソリューション
<button>
Save
<a href="rules/axe/html#">More options</a>
</button>
<div role="button">
Search
<a href="rules/axe/html#">Settings</a>
</div>
なぜ重要なのか
対話型コントロールの祖先を持つフォーカス可能な要素 (ボタン要素やアンカー要素など、ユーザー入力を受け入れる要素) は、スクリーン リーダーによって読み上げられず、空のタブ ストップが作成されます。つまり、要素にタブ移動することはできますが、スクリーン リーダーはその要素の名前、役割、または状態を読み上げません。
ルールの説明
ネストされたインタラクティブコントロールはスクリーンリーダーによって読み上げられません
仕組みについて (簡単に言うと)
すべてのインタラクティブ コントロールをチェックし、フォーカス可能な子要素が含まれていないことを確認します。