发布于 2014-05-30 13:01:54
只有在未定义该变量的情况下,mixin中的变量才会公开到它的调用范围中。(文档中没有专门的部分,但提到了这里)。
在您的示例中,.mixin(30px)没有任何效果,因为以前的.mixin调用(即.mixin(20px))已经将@width解锁到了作用域中。
有关于这种行为这里的讨论,但似乎没有办法改变它,除非打破许多重要的较少的设计模式。
-
顺便提一下,另一个相关的例子:
.mixin() {
@width: 10px;
}
.mixin() {
@width: 20px;
}
.selector {
.mixin();
width: @width;
}在这种情况下,结果是20px,因为两个混频器同时展开,最后一个@width定义获胜。
https://stackoverflow.com/questions/23954349
复制相似问题