我希望能夠訪問GWT標籤的字體大小。我已經試過:獲取GWT標籤的計算字體大小
String fontSize = label.getElement().getStyle().getFontSize()
但這似乎僅是已編程設置(而不是字體大小由CSS規則決定)的字體大小。有任何想法嗎?
感謝,
〜歐文
我希望能夠訪問GWT標籤的字體大小。我已經試過:獲取GWT標籤的計算字體大小
String fontSize = label.getElement().getStyle().getFontSize()
但這似乎僅是已編程設置(而不是字體大小由CSS規則決定)的字體大小。有任何想法嗎?
感謝,
〜歐文
沒有,getFontSize()返回CSS property only
。
給像下面一試:
String fontsize= DOM.getStyleAttribute(label.getElement(), "font-size");
如果你正在尋找的computed size,GWT不提供開箱的,但你應該能夠使用一個簡單的JSNI
檢索它。例如:
public static native String getComputedStyleProperty(Element element, String property) /*-{
if ($doc.defaultView && $doc.defaultView.getComputedStyle) {
return $doc.defaultView.getComputedStyle(element, null).getPropertyValue(property);
}
return "";
}-*/;
未經測試,但應該讓你開始。請注意,property
應該是camelCase
,對於IE < 9,您還應該檢查currentStyle
。還應該返回基於element
的樣式屬性的退步,而不是空字符串。 另請參閱Get computed font size for DOM element in JS。
儘管看起來朝着正確的方向,但返回null。 – opowell 2013-03-13 13:29:21
這似乎不起作用,當標籤的字體大小爲「24px」(從
繼承)時,它會返回「」。 – opowell 2013-03-12 15:29:56奇怪。你能看到在螢火蟲?看到我更新的屬性爲「字體大小」。請檢查一次 – 2013-03-12 15:33:48
1.我可以看到它,當我在Chrome中「檢查元素」。 2. Camelcase是必需的 - 「font-size」會引發錯誤。 – opowell 2013-03-13 13:25:04