2013-03-18 99 views
1

我想完成一個mixin計算字體大小的rem單位基於px與後備如果瀏覽器不支持rem使用px。但是,如果我解析,我有一個問題讓我們說16px它將成爲價值+ pxpx。css較少mixin的字體

主要的問題是,如果我想在別的地方使用相同的變量,我不能,因爲我必須定義它,而無需px或單位測量。

如何讓它通過包括單位測量值並正確返回?

對於那些會讀取速度非常快的人,想一想爲什麼不刪除沒有px的連接將無法工作。將成爲pxrem

.remCalc(@sizeValue) { 
    @remValue: (@sizeValue/@font-size-base); 
    font-size: ~"@{sizeValue}px"; 
    font-size: ~"@{remValue}rem"; 
} 

回答

5

您可以使用unit() function

.remCalc(@sv) { 
    @sizeValue: unit(@sv); 
    @remValue: (@sizeValue/@font-size-base); 
    font-size: unit(@sv,px); 
    font-size: unit(@remValue,rem)"; 
} 

例如:

@sv: 10px; 

功能可以剝離單元

unit(@sv); // 10 

或更改單元

unit(@sv,em); // 10em