2

我正在为这样的字体使用mixin:

#font {
  .trebuchet(@weight: normal, @size: 12px, @lineHeight: 20px, @style:normal) {
    font-family: "Trebuchet MS", arial, verdana, sans-serif;
    font-size: @size;
    font-weight: @weight;
    line-height: @lineHeight;
    font-style: @style;
  }  
}

我想称之为只更改最后一个参数样式,但将其他值保留为默认值。例如,不要写:

#font > .trebuchet(normal, 12px, 20px, italic);

我会写这样的东西:

#font > .trebuchet(false, false, false, italic);

(这实际上有效,但我怀疑出于错误的原因 - 或者无论如何它似乎不正确的语法)实现这一目标的最佳方法是什么?

4

1 回答 1

3

您可以使用模式匹配。你应该像这样克隆你的 .trebuchet 类:

.trebuchet when (@weight=false) and (not(ispixel(@size)) and (not(ispixel(@lineHeight)) {
    font-style: @style;
}
于 2012-02-15T15:31:40.783 回答