在 LESS 中将条件传递给 mixins
Passing conditions to mixins in LESS
首先,我使用的是 LESS 1.7(而且我无法更改它)。我的 less 文件中有以下 if-mixin,如果满足条件,它应该设置 属性 及其值:
.if(@condition, @property, @value) when (@condition){
@{property}: @value !important;
}
如果我像这样将条件传递为 true/false,它就可以正常工作:
.column-header {
font-family: 'Something';
.if(true, color, green);
}
但是,我无法将条件作为表达式传递。如果我想通过 2 > 1
之类的比较,我会得到一个解析错误:expected ')' got '>'
。这是否不受支持(或者在 1.7 中不支持)?难道我做错了什么?任何解决方法?谢谢!
不确定是否可以将条件传递给 mixin。
但是你可以只写代码而不用 .if
mixin:
.column-header {
font-family: 'Something';
& when (2 > 1) {
color: green;
font-size: 20px;
}
}
首先,我使用的是 LESS 1.7(而且我无法更改它)。我的 less 文件中有以下 if-mixin,如果满足条件,它应该设置 属性 及其值:
.if(@condition, @property, @value) when (@condition){
@{property}: @value !important;
}
如果我像这样将条件传递为 true/false,它就可以正常工作:
.column-header {
font-family: 'Something';
.if(true, color, green);
}
但是,我无法将条件作为表达式传递。如果我想通过 2 > 1
之类的比较,我会得到一个解析错误:expected ')' got '>'
。这是否不受支持(或者在 1.7 中不支持)?难道我做错了什么?任何解决方法?谢谢!
不确定是否可以将条件传递给 mixin。
但是你可以只写代码而不用 .if
mixin:
.column-header {
font-family: 'Something';
& when (2 > 1) {
color: green;
font-size: 20px;
}
}