メインコンテンツまでスキップ

no-nonstandard-features

markuplint にバンドルされたHTML仕様データで**非標準(non-standard)**とマークされた要素・属性について警告します。

備考

旧 no-unsupported-features ルールの checkNonStandard オプション(#3989)から分割されました。このルールを有効にすることは旧来の checkNonStandard: true と等価です。browserslist によるブラウザサポートチェックにはno-unsupported-browser-featuresルールを、実験的な機能にはno-experimental-featuresルールを使用してください。

デフォルトの深刻度​

warning

オプション​

オプション型デフォルト説明
ignoreFeaturesstring[][]無視する機能

ignoreFeatures の形式​

完全一致で判定します(グロブやワイルドカードパターンは使用できません)。ただし、英字の大文字・小文字は次のように比較します。要素の部分は、その言語のタグ名と同じ方法で比較します。パーサーがタグ名の大文字・小文字を区別する構文(JSX、Svelte、Astro、MDX)では区別し、それ以外ではASCIIの大文字・小文字を区別しません。属性の部分は、その属性の名前をDOMが比較する方法で比較します(属性名の大文字・小文字を参照)。

  • "dialog" — <dialog> 要素を無視します。要素名はドキュメントがタグ名を比較する方法で比較します。HTMLではASCIIの大文字・小文字を区別せず、タグ名の大文字・小文字を区別する構文(JSX、Svelte)では完全一致です(DIALOG は <dialog> ではありません)
  • "input[list]" — <input> 要素の list 属性を無視します。属性名は、検査中の属性についてDOMが比較する方法で比較します。LIST は、HTMLでは同じ属性で、JSXやSvelteのHTML要素でも同じ属性ですが、JSXが設定する <svg> 要素では同じ綴りだけが同じ属性です

使用例​

❌ 間違ったコード例

<canvas moz-opaque></canvas>

✅ 正しいコード例

<canvas></canvas>

deprecated-element からの移行​

v4.x の deprecated-element ルールは非推奨(deprecated)、廃止(obsolete)、非標準(non-standard)の3種類を検出していました。v5.x では非標準の検出はこのルールに移管されました。

{
"rules": {
"no-nonstandard-features": true
}
}

recommended プリセットを使用している場合は、compat プリセット経由で自動的に有効になっているため変更は不要です。

Interface​

{
"no-nonstandard-features": boolean
}

Options​

{
"no-nonstandard-features": {
"options": {
"ignoreFeatures"?: string[]
}
}
}
PropertyTypeDefault ValueDescription
ignoreFeaturesstring[]undefinedFeatures to ignore. Element name ("dialog") or attribute pattern ("input[list]").

Default Severity​

warning