跳到主要內容

選擇器最大特異性

限制選擇器的特殊性。

    .foo, #bar.baz span, #hoo { color: pink; }
/** ↑ ↑ ↑
* Each of these selectors */

造訪 特殊性計算器 以視覺化呈現選擇器特殊性。

此規則會忽略具有變數內插的選擇器(#{$var}@{var}$(var))。

此規則會在計算選擇器特殊性之前,先解析巢狀選擇器。選擇器清單 中的每個選擇器都會個別評估。

message 次要選項 可以接受此規則的參數。

選項

字串:允許的最大特殊性。

格式為 "id,class,type",如 W3C 選擇器規格 中所述。

例如,使用 "0,2,0"

以下模式會被視為問題

#foo {}
.foo .baz .bar {}
.foo .baz {
& .bar {}
}
.foo {
color: red;
@nest .baz .bar & {
color: blue;
}
}

以下模式不會被視為問題

div {}
.foo div {}
.foo div {
& div a {}
}
.foo {
& .baz {}
}
.foo {
color: red;
@nest .baz & {
color: blue;
}
}

次要選項(選用)

ignoreSelectors: ["/regex/", /regex/, "non-regex"]

給定

[
"0,2,0",
{
"ignoreSelectors": [":global", ":local", "/^my-/"]
}
]

以下模式不會被視為問題

:global(.foo) .bar {}
:local(.foo.bar) {}
:local(.foo, :global(.bar).baz) {}
my-element.foo.bar {}

以下模式會被視為問題

:global(.foo) .bar.baz {}
:local(.foo.bar.baz) {}
:local(.foo, :global(.bar), .foo.bar.baz) {}
my-element.foo.bar.baz {}