跳到主要内容

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:

* * > * {}