将条件传递给LESS中的mixins

时间:2018-11-16 15:39:08

标签: css less conditional-statements

首先,我正在使用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中不支持此功能)?难道我做错了什么?任何解决方法?谢谢!

1 个答案:

答案 0 :(得分:0)

不知道可以将条件传递给mixin。

但是您可以使用.if mixin来编写代码:

.column-header {
    font-family: 'Something';

    & when (2 > 1) {
        color: green;
        font-size: 20px;
    }
}