如果变量不等于null,我试图将字体家族用于div。
我少的代码是

div.content {
& when (isstring(@contentFont)) {
        font-family: @contentFont;
    }
}


我从CSS得到的输出是

div.content when (isstring(@contentFont)) {
  font-family: Abel;
}


我的问题是,样式不适用div.content,不确定我在做什么错。任何帮助将不胜感激。

最佳答案

如评论中所述,您使用的是lessphp的0.4.0版本–似乎不支持您尝试使用的the shorthand guard (when) syntax

但是,它看起来像does support guards on mixins

尝试将您的代码分成一个混合块和该混合块的用法,如下所示:

/* the mixin */

.fontIfString(@font) when (isstring(@font)) {
    font-family: @font;
}

/* usage */

@contentFont: "hello";

div.content {
    .fontIfString(@contentFont);
}

07-24 22:06