2012-02-15 3 views
2

Я использую подмешать для шрифта, как это:значения по умолчанию для параметров Mixins

#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); 

(который на самом деле работает, но я подозреваю, по неправильным причинам -или в любом случае это не кажется правильный синтаксис) Каков наилучший способ достичь этого?

+1

См [именованные параметры] (http://lesscss.org/features/#mixins-parametric-feature-named-parameters), например, '.trebuchet (@style: курсив);'. –

ответ

3

Вы можете использовать образец соответствия. Вы должны клонировать свой класс .trebuchet так:

.trebuchet when (@weight=false) and (not(ispixel(@size)) and (not(ispixel(@lineHeight)) { 
    font-style: @style; 
} 
Смежные вопросы