selector-max-universal
Limit the number of universal selectors in a selector.
* {}
/** ↑
* This universal selector */
This rule resolves nested selectors before counting the number of universal selectors. Each selector in a selector list is evaluated separately.
The logical combinations pseudo-class (e.g. :not
, :has
) is also evaluated separately. The rule processes the argument as if it were an independent selector, and the result does not count toward the total for the entire selector.
Options
int
: Maximum universal selectors allowed.
For example, with 2
:
The following patterns are considered problems:
* * * {}
* * {
& * {}
}
* * {
& > * {}
}
The following patterns are not considered problems:
* {}
* * {}
.foo * {}
*.foo * {}
/* each selector in a selector list is evaluated separately */
*.foo,
*.bar * {}
/* `*` is inside `:not()`, so it is evaluated separately */
* > * .foo:not(*) {}
Optional secondary options
ignoreAfterCombinators: ["array", "of", "combinators"]
Ignore universal selectors that come after one of the specified combinators.
Given:
[">", "+"]
For example, with 2
.
The following pattern is not considered a problem:
* * > * {}