【发布时间】:2012-10-17 21:18:10
【问题描述】:
在 LESS CSS 中,是否可以在调用另一个 mixin 时使用命名空间变量或作为另一个 mixin 的默认值?使用普通语法,似乎没有,但是有没有转义序列或其他语法可以用来实现我正在寻找的效果?
我正在考虑这样的代码:
#namespace {
@nsColor: #333;
}
.testMixin1(@mixinColor) {
background-color: @mixinColor;
}
.selector { .testMixin1(#namespace > @nsColor); }
或者……
.testMixin2(@anotherMixinColor: #myNamespace > @myColor) {
background-color: @anotherMixinColor;
}
否则,这会严重限制命名空间的实用性。这就像能够将变量放在对象范围内,但只能将全局范围内的变量作为参数传递给函数。基本上,这似乎消除了命名空间 90% 的效用。
【问题讨论】:
-
我同意这种观点 - less 中的一些架构决策令人惊讶.. 考虑到它是用一种语言编写的,这似乎很有价值并且(你会认为)超级容易实现对范围一丝不苟。
标签: css namespaces less mixins