对于以下SASS,当class-a也有class-b时,应用的颜色为蓝色。
然而,当body元素具有class-a时,我希望颜色为红色,但这会导致错误。
.class-a {
&.class-b {
color: blue;
}
&body {
color: red;
}
}
答案 0 :(得分:1)
目前无法做到这一点。
目前,&在语法上与元素选择器相同,因此它不能与一个元素选择器一起出现。我认为这有助于澄清它可以在哪里使用;例如,foo& bar永远不会是一个有效的选择器(或者可能等同于foo& bar或foo& bar)。
有讨论要改变这种行为,但在它成为Sass的一部分之前可能还有很长的路要走。
与此同时,你所能做的就是:
.class-a {
&.class-b {
color: blue;
}
}
body.class-a {
color: red;
}