&符号(&)结束,并且是SASS中的select器的一部分

我有一个问题,我正在努力。 我有这个mixin(这是一个尝试,以减lesssass):

@mixin button-variant($color, $background, $border) { ... .foreverAlone{ ... } .iThink .illNeverWork& { color: $pinkUnicornRainbow; ... } } 

这显然是不工作的:D我想它会产生像这样的东西:

 .callerClass .foreverAlone{ ... } .callerClass .iThink .illNeverWork.callerClass{ color: #123ABC; ... } 

mixin在各种div类中调用,所以不可能使其变成静态的(很容易)。

有没有什么解决方法从一些萨斯职业(或不亲,但比我更聪明)? 感谢大家的关注和分享您的解决scheme。

对于Sass版本3.2及更高版本,这些都是使用父select器的有效方法:

 .foo { &, &.bar, &#bar, &:after, &[active] { color: red; } } .foo { .bar & { color: red; } } 

从Sass 3.3开始,这是有效的:

 .foo { &bar, &-bar { color: red; } } 

从Sass 3.4开始,这是有效的:

 .foo { $foo: &; @at-root bar#{&} { color: red; } }