编辑: 问题似乎是字体大小没有明确设置,只能由css类设置。所以style.fontSize总是返回一个空字符串
如果还有其他方法可以返回字体大小?
var allMainFrameElems = parent.main.document.getElementsByTagName('*');
for (i=0; i < allMainFrameElems.length; i++){
if(allMainFrameElems[i].style.fontSize != null){
alert(llMainFrameElems[i].style.fontSize);
}
}
答案 0 :(得分:1)
如果未在元素上明确设置fontSize
样式(例如<p style="font-size:12pt;">...</p>
),您将无法从任何地方获取该样式。字体大小通常在CSS类中设置,这些类无法从元素的属性中访问,并且元素没有任何与字体大小相关的属性。
答案 1 :(得分:0)
为了甚至接近这样做,你需要做一些技巧,并且无法准确地确定字体大小。基本上,你必须对每个元素(不好)操纵页面才能确定这一点。
请参阅此小提琴页面,特别是我很快就将pixelPerEm
功能放在一起。 http://jsfiddle.net/MarkSchultheiss/vc8Zy/
目前不是很干净,如果我有时间,我可能会尝试让它变得更好,但它可能会给你一些东西,即使它不是很漂亮。
编辑:基本解释是利用em
css,注入具有已知设置的元素,计算注入时的像素偏移量,然后移除注入的元素。这些都不是很好,所有这些都是错误/容易出错或有可能出问题。