首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得元素的“指定”样式而不是计算样式

如何获得元素的“指定”样式而不是计算样式
EN

Stack Overflow用户
提问于 2015-02-19 20:29:04
回答 2查看 110关注 0票数 3

在不包含viewport元标记的网页上,大多数移动浏览器会将页面上的部分或所有字体“提升”到比css指定的大小。例如,在移动Safari上,指定大小的7px将被提升到类似于12px的大小。

您可以使用getComputedStyle读取升压值。我的问题是,有没有一种可靠的方法来读出未提升的价值?也就是说,如果字体被提升到12,我想知道它从7开始。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-23 14:14:33

只是简单的回答。简而言之:你不能用今天的API获得特定的样式,我可以通过使用文本大小调整 (前缀为-webkit- for Safari)暂时关闭字体提升来解决我的具体问题。

票数 0
EN

Stack Overflow用户

发布于 2015-04-16 08:39:28

Webkit有一个不推荐的函数,用于获取元素window.getMatchedCSSRules(<<element>>)的所有样式表规则。您可以使用它来获取规则列表,并循环它们来打印或处理每个规则的属性。您还需要考虑元素的style属性。

要处理font-size场景,我认为最好的方法是获取所有适用于元素的规则,按优先级排序(记住要考虑style属性和!important标志,然后选择值。

但是,这并不完全可靠,因为它是一个Webkit函数,而且它即将退出。有关于如何挖掘规则的这里的一堆讨论。一旦您有了元素的规则,这只是挑选您需要的特定信息的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28616257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档