2011-08-25 71 views
0

编辑: 问题似乎是字体大小没有明确设置,并且仅由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

你想知道你的尺寸是什么尺寸:px,pt,ex,em,cm,mm,in,pc或相对于页面上的其他东西? –

回答

0

为了甚至接近这样做,你将需要做一些技巧,并将无法defintively确定字体大小。基本上,你将不得不在每一个元素(不好)上操纵页面来确定这一点。

看到这个小提琴的页面,特别是pixelPerEm函数我很快就扔在一起。 http://jsfiddle.net/MarkSchultheiss/vc8Zy/

目前它并不是很干净,如果我有时间,我可能会尝试做得更好,但它可能会给你一些启动的东西,即使它不是很漂亮。

编辑:基本的解释是利用 css,注入一个已知设置的元素,计算注入时的像素偏移,然后删除注入的元素。没有一件是漂亮的,全部都是错误/错误倾向或有潜在的问题。

1

如果fontSize风格中的元素(例如<p style="font-size:12pt;">...</p>)上没有明确设定,你将不能够从任何地方得到它。字体大小通常是在CSS类中设置的,它们不能从元素的属性中获得,并且元素没有任何与字体大小相关的属性。

+0

是的,这是问题,我不能设置字体大小,因为有几十页都有不同的类。没有任何解决办法吗? – code511788465541441

相关问题