Chrome Dev Tools 里的 Computed 面板,可以显示 Computed 的 style 列表。如图。
这个在 javascript 里可以通过 getComputedStyle(element) 来获取,但是获取的结果包括了完整的 样式列表,但我想要拿到真正被样式表影响过了属性,过滤掉那些 inherited 的属性。不知如何实现。
我的问题类似 SO 上的 这个问题

Copyright 2014-2025 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我的想法就是跟一个标签相同的没有任何样式的元素去对比。
没错,就是创建一个标签相同的基础元素,对比当前元素和基础元素的样式。
我给这个
p#a定义了以下样式:输出结果如下:
Computed 面板中显示的如下:
Computed 面板中把每个样式属性拆分到了最下级,而我通过对比产生的是样式属性缩写,比如样式中的
line-height被划分到font属性中。还有一个问题就是
display没有被输出。因为display定义在标签选择器中,所以测试元素插入到文档时也被赋予了同样的样式,不过可以从document.styleSheets中找到对应的标签选择器的样式。