假设我想为一个变量定义一个全局值,然后为特定的选择器覆盖它。根据SASS 文档,这应该是可能的。
变量仅在定义它们的嵌套选择器级别内可用。如果它们是在任何嵌套选择器之外定义的,那么它们在任何地方都可用。
然后,逻辑将声明“green”和“red”作为值$text-color
仅在它们各自的嵌套选择器中可用,并且$text-color
在其他任何地方调用时将采用“blue”值,例如在.foo
.
$text-color: blue;
.green {
$text-color: green;
color: $text-color;
}
.red {
$text-color: red;
color: $text-color;
}
.foo {
color: $text-color;
}
然而,情况并非如此,上面的 SASS 编译为:
.green {
color: green;
}
.red {
color: red;
}
.foo {
color: red;
}
理解这一点的任何帮助都会很有帮助。