2013-09-27 81 views
2

我必須爲項目使用計算值。最好的方法是使用CSS3 calc屬性。但是,Android Webview本機瀏覽器不支持此功能。因此,我發現最簡單的方法是使用jQuery來處理這個問題:使用jQuery和ems計算CSS值

$(element).css('width','100%').css('width','-=100px'); 

問題是,這個時候,我需要使用EM值,而不是一個像素值:

$(element).css('width','100%').css('width','-=1em'); 

這不管用。

你有任何(簡單)的解決方案來處理這個問題?

+0

[jQuery/JavaScript:以簡單的方式將像素轉換爲em]的可能重複(http://stackoverflow.com/questions/10305993/jquery-javascript-convert-pixels-to-em-in-a-easy -辦法) –

回答

0

最好的辦法是爲計算創建一個變量。

var calc = 0; 

然後使用該var來輸出您的新值。

calc = $(element).width() - 100; 

將此值寫入您的控制檯以確保您確定該值。

console.log(calc); 

一旦你沒事與你應該能夠在CSS

$(newElement).css({"width" , calc + "px"}); 
//Note: this syntax allows for multiple attributes to be applied to an element. 

設置寬度使用它。如果你需要進一步的幫助,我已經創建了一個的jsfiddle在那裏你可以。 。小提琴。 http://jsfiddle.net/Fp7qp/

希望這有助於!

0

你最好不用ems做數學運算。除非您在元素上聲明字體大小,否則1em將等於16px。