Accessibility
svelte-vitals の Accessibility ルール一覧。
すべての人にとって使いやすいサイト。ARIA の妥当性、ランドマーク構造、アクセシブルネーム、セマンティック HTML を見ます。
| ルール | 重大度 | 概要 |
|---|---|---|
a11y/accessible-name |
🟡 warning | ボタン・リンク・画像ボタン・iframe には、アクセシブルネームを算出できる手がかりが必要です。 |
a11y/aria-hidden-focus |
🟡 warning | キーボードでフォーカスできる要素を aria-hidden=“true” で支援技術から隠してはいけません。 |
a11y/disallowed-aria-props |
🟡 warning | 要素の role が対応しない aria-* 属性は無視され、role が禁止する属性、たとえば素の div への名前付けは、公開されない名前になります。 |
a11y/disallowed-element |
🟡 warning | プロジェクトが「使わない」と宣言した要素の出現をすべて報告します。宣言するまでは何もしません。 |
a11y/duplicate-landmark |
🟡 warning | 1つのルートに main・banner・contentinfo ランドマークはそれぞれ1つまでにしましょう。 |
a11y/id-duplication |
🟡 warning | ルート内の id はすべて一意にしましょう。 |
a11y/interactive-nesting |
🟡 warning | インタラクティブな要素を、別のインタラクティブな要素の内側に置いてはいけません。 |
a11y/invalid-aria-value |
🟡 warning | aria-* 属性の値は、その属性に WAI-ARIA 仕様が定める型と一致させます。 |
a11y/invalid-role |
🟡 warning | role 属性には、タイポでも抽象ロールでもない、具体的な WAI-ARIA ロールを指定します。 |
a11y/label-has-control |
🟡 warning | label をフィールドと関連付けるには for 属性かラップされたコントロールが必要です。 |
a11y/no-accesskey |
🟡 warning | accesskey 属性はページレベルのショートカットキーを割り当てますが、実際のキーの組み合わせはブラウザと OS によって異なり、ユーザーには発見できず、支援技術のキーバインドと衝突します。 |
a11y/no-autofocus |
🟡 warning | autofocus はページ読み込み時にユーザーの意図と無関係にフォーカスを移動させます。スクリーンリーダーのユーザーは組み立てていたページの文脈を失い、キーボードのユーザーはページの途中に放り出されます。 |
a11y/no-missing-id-ref |
🟡 warning | id参照は、合成後のルートのどこかに存在する id を指している必要があります。 |
a11y/permitted-contents |
🟡 warning | すべての要素は、HTML のコンテンツモデル上、親要素に許可されたコンテンツでなければなりません。 |
a11y/placeholder-label-option |
🟡 warning | required かつ単一選択の select には、値を選ばせずに送信できてしまわないよう空の先頭 option が必要です。 |
a11y/positive-tabindex |
🟡 warning | 0 より大きい tabindex はその要素をページ内の自然順のすべての要素より前に置き、たった1つの tabindex=“1” がページ全体のキーボードナビゲーション順を組み替えてしまいます。 |
a11y/required-aria-props |
🟡 warning | state や property 属性を要求するロールには、ネイティブなホスト要素のセマンティクスで代替されない限り、それらの属性が必要です。 |
a11y/required-element |
🟡 warning | すべてのルートがプロジェクトの宣言する要素を含まなければなりません。合成されたルートで判定するので、レイアウトの <main> も数えます。 |
a11y/top-level-landmark |
🟡 warning | banner・main・complementary・contentinfo ランドマークは、他のランドマークの内側に置いてはいけません。 |
a11y/unknown-aria-attribute |
🟡 warning | aria-* 属性には、タイポではない実在の WAI-ARIA 属性名を指定します。 |
a11y/abbr-title |
🔵 info | title のない <abbr> は読者に展開形を提供しません。晴眼ユーザーにはツールチップが出ず、支援技術には展開するものがありません。 |
a11y/deprecated-aria |
🔵 info | ARIA 1.3 が全体として、または置かれた role 上で非推奨にした role や aria-* 属性は、いまも動くが、そこではもう定義されていません。 |
a11y/deprecated-attr |
🔵 info | HTML spec データがその要素で非推奨と記す属性は、標準ではなくレガシー互換によって挙動が決まっています。 |
a11y/deprecated-element |
🔵 info | HTML 標準の obsolete features に挙げられた要素は非適合であり、適合する代替要素があります。 |
a11y/doctype |
🔵 info | src/app.html の先頭は <!doctype html> で始めましょう。 |
a11y/no-duplicate-dt |
🔵 info | 1つの dl 要素の中で、同じ名前の dt 要素は複数あるべきではありません。重複した用語はたいてい、2つの説明が1つの dt を共有するはずだったコピペミスです。 |
a11y/pattern-title |
🔵 info | input に pattern を指定するときは、期待する形式を説明する title を含めるべきと仕様が述べています。それがないと、送信に失敗しても「値が違う」ことしか伝わりません。 |
a11y/require-datetime |
🔵 info | time 要素のテキストは機械可読であるか、datetime 属性で機械可読な値を補う必要があります。 |
a11y/unverified-id-ref |
🔵 info | オプトイン: 合成が完全には解決していないルート上で、検証できない id 参照を検出します。 |
a11y/use-list |
🔵 info | プレーンテキストに入力された行頭記号は、本物のリスト要素に置き換えるべきです。 |
ルールの重大度を変えたり、無効にしたりする方法は 設定 を参照してください。