Est*_*ask 4 css less less-mixins
分离的规则集之间是否存在实质性差异,例如
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
Run Code Online (Sandbox Code Playgroud)
和非参数混合?例如
.mixin() {
@margin: 1px;
margin: @margin;
}
Run Code Online (Sandbox Code Playgroud)
它们对嵌套运算符的行为是否相同?
最明显的区别是语法(分号对于规则集是强制性的),规则集将其变量保持为私有,但这就是我能找到的全部内容.手册中没有详细说明.
分离的规则集是一个变量.对于Less中的变量,最后一个声明获胜并且变量是延迟加载的.
对于可重用代码,您可以通过定义具有相同名称的第二个mixin()来轻松扩展.mixin():
.mixin() {
@margin: 1px;
margin: @margin;
}
.mixin() {
color: red;
}
Run Code Online (Sandbox Code Playgroud)
在上面使用分离的规则集时,您应该重复所有属性,因为第二个声明会覆盖第一个:
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
@detached-ruleset: {
@margin: 1px;
margin: @margin;
color: red;
};
Run Code Online (Sandbox Code Playgroud)
另见:https://stackoverflow.com/a/30384948/1596547