Rules
The complete list of built-in rules. Most users don't need to configure these individually — presets enable them for you. See Applying Rules to customize.
Syntax
| Rule ID | Fixable | Description |
|---|---|---|
no-content-after-body | body要素の終了タグの後に開始タグや非空白のテキストが出現していないかを検証します。 | |
no-duplicate-attr | 🔧 | 属性がひとつの要素の中で重複していたら警告します。大文字小文字を区別しません。 |
no-malformed-character-reference | 文字参照が不正な形式(未知の名前、セミコロンの欠落、NULL・サロゲート・制御文字・非文字・Unicode範囲外の数値参照)である場合に警告します。 | |
no-orphaned-end-tag | 🔧 | 対応する開始タグなしに終了タグが現れた場合に警告します。これはHTML標準における内部的なパースエラーに該当します。 |
no-stray-head-or-body-tag | headの暗黙的な終了によって取り残された、迷子のhead終了タグや重複したbody開始タグを検出します。 | |
no-unclosed-element-at-eof | 終了タグを必要とする要素が、ファイル末尾まで開いたままになっていないかを検証します。 | |
no-unescaped-char | テキストノードや属性値でリテラルの小なり記号(strictモードでは大なり記号、二重引用符、素のアンパサンドも)が文字参照でエスケープされていない場合に警告します。 | |
valid-importmap | <script type="importmap"> 要素の本文を、インポートマップの仕様に基づき検証します。 | |
valid-speculation-rules | <script type="speculationrules"> 要素の本文を、Speculation Rules の仕様に基づき検証します。 |
Structure
| Rule ID | Fixable | Description |
|---|---|---|
consistent-table-row-length | 行の列数がテーブルの他の行と一致しない場合に警告します。 | |
head-element-order | 🔧 | <head>内の要素が期待される順序でない場合に警告します。 |
meta-charset-position | 文字エンコーディング宣言がドキュメント先頭1024バイト以内にシリアライズされているかを検証します。 | |
no-deprecated-element | 非推奨と定義されている要素がある場合に警告します。 | |
no-disallowed-ancestor | 要素が、コンテンツモデルで禁止されている祖先要素の子孫として出現している場合に警告します。 | |
no-duplicate-dt | <dl>内の名前の重複禁止 | |
no-duplicate-sibling-attr | 兄弟要素間で一意であるべき属性が、同じ親の下で同じ種類の複数の要素に指定されている場合に警告します。 | |
no-duplicate-visible-main | ドキュメント内に表示状態のmain要素が複数存在することを禁止します。 | |
no-empty-palpable-content | 空のパルパブルコンテンツ要素があれば警告します。 | |
no-empty-table-track | テーブルの行または列にセルがひとつも開始しない場合に警告します。 | |
no-obsolete-doctype | ドキュメントが廃止されたDOCTYPEを宣言している場合に警告します。 | |
no-obsolete-element | HTML Living Standardが非準拠かつ廃止された機能としてマークしている要素がある場合に警告します。 | |
no-restricted-element | 指定された要素がドキュメントまたは要素に存在している場合に警告します。 | |
no-table-cell-overlap | テーブル内で2つのセルが同じスロットを覆うように配置されている場合に警告します。 | |
no-table-span-overflow | セルのrowspanが行グループの末尾を越えている場合に警告します。 | |
permitted-contents | HTML要素のコンテンツモデルと構造的な制約を検証します。 | |
require-ancestor | 要素に必須の祖先要素が存在しない場合に警告します。 | |
require-doctype | ドキュメントにDOCTYPEが含まれていない場合に警告します。 | |
require-element | 指定された要素がドキュメントまたは要素に表示されなかった場合、警告します。 |
Attributes
| Rule ID | Fixable | Description |
|---|---|---|
itemprop-requires-itemscope | itemprop が必ずアイテムに属していることを要求します。 | |
link-types | WHATWG標準に対してrel属性のリンクタイプキーワードを検証します。 | |
map-id-name-match | map要素にidとnameの両方が指定されているとき、両者の値が一致することを要求します。 | |
meter-value-bounds | meter要素の属性 (min, max, value, low, high, optimum) 間の HTML LS 仕様で定められた不等式関係を検証します。 | |
no-always-matching-source | srcset付きの後続兄弟を持つsource要素にmediaまたはtype属性を必須とします。 | |
no-ambiguous-navigable-target-names | リンクやその他のナビゲーション要素において、特別なナビゲーションキーワード(_blank、_self、_parent、_top)が誤って無効な対象名に置き換えられるのを防ぎ、ナビゲーションが意図した通りに動作することを保証します。 | |
no-deprecated-attr | 非推奨と定義されている属性がある場合に警告します。 | |
no-disallowed-attr | 属性が仕様で定義されているものの、この文脈では許可されていない場合に警告します。 | |
no-duplicate-autofocus | 同一のautofocusスコープ起点要素を共有する複数の要素にautofocus属性を指定することを禁止します。 | |
no-ineffective-attr | 🔧 | 指定された属性が要素に影響を与えることができない(つまり無意味である)場合は警告します。 |
no-invalid-attr-value | 属性の値が仕様(あるいはカスタムルール)が要求する型やパターンに一致しない場合に警告します。 | |
no-mismatched-aspect-ratio | imgまたはsource要素のwidth/height属性が実際の画像のアスペクト比と一致しない場合に警告します。 | |
no-mixed-srcset-descriptors | srcset属性内で幅ディスクリプタとピクセル密度ディスクリプタを混在させることを禁止します。 | |
no-obsolete-attr | HTML Living Standardが非準拠かつ廃止された機能としてマークしている属性がある場合に警告します。 | |
no-restricted-attr | HTML仕様とは無関係に、プロジェクトのルールで禁止する特定の属性や属性値の組み合わせを禁止します。 | |
no-unknown-attr | 属性がその要素の仕様(あるいはカスタムルール)で定義されていない場合に警告します。 | |
no-unpaired-srcset-sizes | srcsetの幅ディスクリプタとsizes属性の相互必須関係をチェックします。 | |
progress-value-bounds | progress要素の属性値について HTML LS 仕様で定められた不等式関係を検証します(value ≤ max、max省略時は value ≤ 1)。 | |
require-attr | 設定された属性もしくは仕様上必須となっている属性が要素上に存在しない場合、警告をします。 | |
require-datetime | time要素に無効なコンテンツが含まれている場合、datetime属性が必要であることを警告します。 | |
sizes-auto-requires-lazy-loading | sizes="auto"を使用する箇所では loading="lazy" を必須とします。 |
References
| Rule ID | Fixable | Description |
|---|---|---|
form-attr-references-form | フォーム関連要素の form 属性は、実在する form 要素の ID を参照しなければならないことを強制します。 | |
input-list-references-datalist | input 要素の list 属性は、実在する datalist 要素の ID を参照しなければならないことを強制します。 | |
label-for-references-labelable | label 要素の for 属性は、実在するラベル付け可能要素の ID を参照しなければならないことを強制します。 | |
no-broken-fragment-link | ハイパーリンクに指定されたフラグメントが、同じドキュメント内に存在するIDを参照しているかどうかを確認します。 | |
no-duplicate-id | id属性の値がドキュメント内で重複していたら警告します。 | |
no-refer-to-non-existent-id | for、form、aria-*などに指定されたIDまたはIDのリストが、同じドキュメント内に存在するIDを参照しているかどうかを確認します。 | |
usemap-references-map | img 要素の usemap 属性は、実在する map 要素への有効なハッシュ名参照でなければならないことを強制します。 |
Forms
| Rule ID | Fixable | Description |
|---|---|---|
label-no-multiple-controls | HTML LS §4.10.4 が定める label 要素の子孫コントロール制約を強制します。 | |
no-extra-selected-options | multiple属性を持たないselect要素の配下に、selected属性付きoption要素が複数ある状態を禁じます。 | |
no-input-file-value | HTML LS §4.10.5.1.18 に従い、<input type="file"> の value 属性は省略または空文字列のみ許容します。 | |
placeholder-label-option | select要素にプレースホルダーラベルオプションが必要か確認します。 |
Accessibility
| Rule ID | Fixable | Description |
|---|---|---|
aria-prop-requires-role | 明示的なロールを持たない要素にグローバルでないARIAプロパティが指定された場合に警告します。 | |
element-supports-aria-prop | ARIA in HTML の要素固有の制約により ARIA プロパティ・状態が禁止されている場合に警告します。 | |
label-has-control | label要素にコントロールがない場合に警告します。 | |
no-abstract-role | 抽象ロールが使用された場合に警告します。 | |
no-aria-hidden-on-hidden-until-found | hidden属性がHidden Until Found状態である要素にaria-hidden="true"を指定することを禁止します。 | |
no-aria-on-presentational-children | childrenPresentationalを持つロールの子孫要素にARIA属性が指定された場合に警告します。 | |
no-aria-on-unsupported-element | ARIA属性を全くサポートしない要素へのARIA属性指定を禁止します。 | |
no-consecutive-br | 🔧 | 連続する<br>の使用に対して警告します |
no-contradictory-aria-prop | ARIA プロパティの値が等価なネイティブ HTML 属性と矛盾している場合に警告します。 | |
no-default-aria-value | ARIAプロパティにスペックで定義されたデフォルト値が明示的に指定された場合に警告します。 | |
no-deprecated-aria-prop | ロールにおいて非推奨のARIAプロパティ/ステートが使用された場合に警告します。 | |
no-deprecated-role | 非推奨(廃止予定)のロールが使用された場合に警告します。 | |
no-duplicate-h1 | ドキュメント内にh1要素が複数あれば警告します。 | |
no-focusable-in-aria-hidden | aria-hiddenで非表示にされたサブツリー内にフォーカス可能なインタラクティブ要素がある場合に警告します。 | |
no-invalid-aria-prop-value | ARIAプロパティ/ステートの値が期待される型に適合しない場合に警告します。 | |
no-nested-top-level-landmark | banner、main、contentinfoが他のランドマーク内に入れ子になっている場合に警告します。 | |
no-prohibited-naming | 命名禁止(naming-prohibited)要素に aria-label / aria-labelledby / aria-braillelabel が使われている場合に警告します。 | |
no-pseudo-list | ビュレット(箇条書き)文字がテキストノードの先頭にある場合は、リスト要素を使用するように求めます。 | |
undefined | undefined | |
no-redundant-aria-prop | ARIA プロパティが等価なネイティブ HTML 属性と同じ意味を冗長に繰り返している場合に警告します。 | |
no-redundant-role | 要素の暗黙のロールと同じロールが明示的に指定された場合に警告します。 | |
no-skipped-heading-level | 見出しレベルをスキップすると警告します | |
no-unknown-role | WAI-ARIA仕様に存在しないロールが指定された場合に警告します。 | |
permitted-roles | ARIA in HTMLの仕様において要素に許可されていないロールが指定された場合に警告します。 | |
require-accessible-name | 要素にアクセシブルな名前がなければ警告します。 | |
require-adjacent-popover | ポップオーバートリガーと対応するターゲットが隣接していない場合に警告します | |
require-aria-prop | ロールに必須のARIAプロパティが指定されていない場合に警告します。 | |
require-dialog-autofocus | show-modal コマンドで表示される dialog 要素に autofocus 属性を持つ要素が必要です | |
require-h1 | ドキュメント内にh1要素がなければ警告します。 | |
require-landmark-label | ページ内で複数回使用されるランドマークロールに一意のアクセシブルネームがない場合に警告します。 | |
require-owned-elements | ロールが必要とする子ロールを含んでいない場合に警告します。 | |
require-parent-role | 明示的なロールを持つ要素が必須の親コンテキストの外に配置された場合に警告します。 | |
role-supports-aria-prop | 要素の計算されたロールで ARIA プロパティ・状態が許可されていない場合に警告します。 | |
tab-requires-tabpanel | アクティブな"tab"ロールの要素に対応する"tabpanel"ロールの要素がない場合に警告します。 |
Style
| Rule ID | Fixable | Description |
|---|---|---|
attr-order | 🔧 | 要素の属性の順序を統一します。 |
attr-value-quotes | 🔧 | 属性値が引用符で囲われていない場合に警告をします。 |
case-sensitive-attr-name | 🔧 | 属性名が大文字小文字のどちらかに統一されていないと警告します。 |
case-sensitive-tag-name | 🔧 | タグ名が大文字小文字のどちらかに統一されていないと警告します。 |
class-naming | 指定された規則に則ったクラス名でなければ警告します。 | |
no-boolean-attr-value | 🔧 | 論理属性に値を指定すると警告します。 |
no-default-value | 🔧 | 属性にデフォルト値を指定したときに警告します。 |
require-end-tag | 終了タグがない場合は警告します。 |
Maintainability
| Rule ID | Fixable | Description |
|---|---|---|
no-event-handler-attr | イベントハンドラ属性を指定すると警告します。 | |
no-hardcoded-id | id 属性値のハードコーディング禁止 |
Browser Compatibility
| Rule ID | Fixable | Description |
|---|---|---|
no-experimental-features | 実験的とマークされたHTML要素や属性を使用している場合に警告します。 | |
no-nonstandard-features | 非標準とマークされたHTML要素や属性を使用している場合に警告します。 | |
no-unsupported-browser-features | ターゲットブラウザでサポートされていないHTML要素や属性を使用している場合に警告します。 |
Removed rules
| Rule ID | Fixable | Description | Drop |
|---|---|---|---|
attr-equal-space-after | Spaces after the equal of attribute | Since v3.0 | |
attr-equal-space-before | Spaces before the equal of attribute | Since v3.0 | |
attr-spacing | Spaces between attributes | Since v3.0 | |
indentation | Indentation | Since v3.0 |