繁体   English   中英

如何获取网页内元素中文本的字体大小

[英]How can I get the font size of text in elements within a webpage

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

如果没有在元素上显式设置fontSize样式(例如<p style="font-size:12pt;">...</p> ),则您将无法从任何地方获取它。 字体大小通常是在CSS类中设置的,无法从元素的属性中获得,并且元素没有任何与字体大小相关的属性。

为了接近执行此操作,您将需要做一些技巧,并且无法确定字体大小。 基本上,您将不得不对每个元素进行大量操作(不好)来确定页面。

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

目前还不是很干净,如果我有时间,我可能会尝试使其变得更好,但即使它不是很漂亮,也可能会给您一些开始。

编辑:基本解释是利用em css,以已知设置注入元素,计算注入时的像素偏移,然后移除注入的元素。 这些都不是很漂亮,并且都容易出错/出现错误或有潜在的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM