2011-03-10 77 views
3

正如我們所知,HTML元素的font-size要麼顯式設置爲style="font-size:10px",要麼由瀏覽器根據樣式表和父屬性的規則和屬性進行計算。獲取div的計算字體大小

在JavaScript中計算字體大小值可能是一項相當複雜的任務,因爲正確的結果可能取決於不一定存在於元素className屬性中的類。

有沒有一種方法可以直接計算字體大小,如div.style['calculated-font-size']? - thanx

回答

6

function elementCurrentStyle(element,styleName)if(element.currentStyle){ var i = 0,temp =「」,changeCase = false; (styleName [i]!=' - '){ temp + =(changeCase?styleName [i] .toUpperCase():styleName [i])(012 = 0; i < styleName.length; i ++) ; changeCase = false;其他{ changeCase = true; } styleName = temp; return element.currentStyle [styleName]; } else { return getComputedStyle(element,null).getPropertyValue(styleName); }}

alert(elementCurrentStyle(myDiv,"font-size")); 

我已經形容這 「getting computed style」 發行幾周前在這裏。

歡呼聲,

+0

完美!這正是我需要的。非常感謝。 – Henning 2011-03-10 20:13:26

+0

謝謝你的代碼:我的問題,爲什麼不直接使用'''getComputedStyle(element,null).getPropertyValue(styleName);'''? – 2014-05-19 09:20:55