如果变量的条件不为空,则为LESScss

时间:2014-11-09 14:38:53

标签: html css less

如果变量不等于null,我试图将字体系列放入div。 我的代码少了

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

我从css得到的输出是

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

我的问题是,样式不适用于div.content,不知道我做错了什么。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

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

然而,它看起来像does support guards on mixins

尝试将代码拆分为mixin并使用此mixin,如下所示:

/* the mixin */

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

/* usage */

@contentFont: "hello";

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