selector-max-type
セレクター内のタイプセレクターの数を制限します。
a {}
/** ↑
* This type of selector */
このルールは、タイプセレクターの数を数える前に、ネストされたセレクターを解決します。 セレクターリストの各セレクターは個別に評価されます。
:not()
疑似クラスも個別に評価されます。ルールは、引数を独立したセレクターであるかのように処理し、結果はセレクター全体の合計にはカウントされません。
message
セカンダリ オプションは、このルールの引数を受け入れることができます。
オプション
int
: 許可されるタイプセレクターの最大数。
たとえば、2
の場合
以下のパターンは問題と見なされます
div a span {}
div a {
& span {}
}
div a {
& > a {}
}
以下のパターンは問題とは見なされません
div {}
div a {}
.foo div a {}
div.foo a {}
/* each selector in a selector list is evaluated separately */
div,
a span {}
/* `span` is inside `:not()`, so it is evaluated separately */
div a .foo:not(span) {}
オプションのセカンダリ オプション
ignore: ["child", "compounded", "custom-elements", "descendant", "next-sibling"]
"child"
子タイプのセレクターを無視します。
たとえば、2
の場合
以下のパターンは問題とは見なされません
div span > a {}
#bar div span > a {}
"compounded"
複合タイプのセレクター、つまり他のセレクターとチェーンされたタイプセレクターを無視します。
たとえば、2
の場合
以下のパターンは問題とは見なされません
div span a.foo {}
div span a#bar {}
"custom-elements"
カスタム要素を無視します。
たとえば、2
の場合
以下のパターンは問題とは見なされません
div a foo-bar {}
"descendant"
子孫タイプのセレクターを無視します。
たとえば、2
の場合
以下のパターンは問題とは見なされません
.foo div span a {}
#bar div span a {}
"next-sibling"
次の兄弟タイプのセレクターを無視します。
たとえば、2
の場合
以下のパターンは問題とは見なされません
div a + span {}
#bar + div + span + a + span {}
ignoreTypes: ["/regex/", /regex/, "non-regex"]
与えられた
["/^my-/", "custom"]
たとえば、2
の場合。
以下のパターンは問題とは見なされません
div a custom {}
div a my-type {}
div a my-other-type {}