jsx-a11y/aria-unsupported-elements 正しさ
何を行うか
予約済みの DOM 要素に ARIA ロール、状態、プロパティが含まれていないことを強制します。
なぜ問題か
特定の予約済みの DOM 要素は ARIA ロール、状態、プロパティをサポートしていません。これは、これらの要素が可視ではないためです。たとえば meta、html、script、style などが該当します。このような要素に ARIA 属性を追加しても意味がなく、スクリーンリーダーに対して混乱を招く可能性があります。
例
このルールにおける誤りなコードの例:
jsx
<meta charset="UTF-8" aria-hidden="false" />このルールにおける正しいコードの例:
jsx
<meta charset="UTF-8" />使い方
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"plugins": ["jsx-a11y"],
"rules": {
"jsx-a11y/aria-unsupported-elements": "error"
}
}bash
oxlint --deny jsx-a11y/aria-unsupported-elements --jsx-a11y-plugin