更少分离的规则集与非参数混合
LESS detached ruleset vs non-parametric mixin
分离的规则集之间是否存在实质性差异,例如
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
和非参数混合?例如
.mixin() {
@margin: 1px;
margin: @margin;
}
它们与嵌套运算符的行为是否相同?
最明显的区别是句法(规则集必须使用分号),并且规则集将其变量保密,但我能找到的就是这些。手册没有详细介绍。
分离的规则集是一个变量。对于 Less 中的变量,最后的声明获胜并且变量被延迟加载。
对于可重用代码,您可以通过定义第二个具有相同名称的 mixin() 来轻松扩展 .mixin():
.mixin() {
@margin: 1px;
margin: @margin;
}
.mixin() {
color: red;
}
在上面使用分离的规则集时,您应该重复所有属性,因为第二个声明会覆盖第一个:
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
@detached-ruleset: {
@margin: 1px;
margin: @margin;
color: red;
};
另请参阅:
分离的规则集之间是否存在实质性差异,例如
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
和非参数混合?例如
.mixin() {
@margin: 1px;
margin: @margin;
}
它们与嵌套运算符的行为是否相同?
最明显的区别是句法(规则集必须使用分号),并且规则集将其变量保密,但我能找到的就是这些。手册没有详细介绍。
分离的规则集是一个变量。对于 Less 中的变量,最后的声明获胜并且变量被延迟加载。
对于可重用代码,您可以通过定义第二个具有相同名称的 mixin() 来轻松扩展 .mixin():
.mixin() {
@margin: 1px;
margin: @margin;
}
.mixin() {
color: red;
}
在上面使用分离的规则集时,您应该重复所有属性,因为第二个声明会覆盖第一个:
@detached-ruleset: {
@margin: 1px;
margin: @margin;
};
@detached-ruleset: {
@margin: 1px;
margin: @margin;
color: red;
};
另请参阅: