我想使用MSHTML来获取html元素的样式。
我想要的是计算出的样式,但没有所有默认值。 (只有在html和css中设置的那些)
MSHTML到目前为止我见过3种类型的样式style,currentStyle和runtimeStyle。
style和runtimeStyle只有内联样式,而当前样式包含所有内容,包括继承样式和默认样式。
有没有办法获取当前设置的样式(内联,外部和内部css)但没有所有继承和默认值?
必须有一种方法可以做到这一点,IE开发人员工具栏似乎知道从哪里继承了哪些样式。
答案 0 :(得分:0)
当您说要排除“默认”和/或继承属性而不是内联,外部和内部css 时,由于默认属性是通过用户代理css设置的,因此不是完全正确的措辞
我认为从显式应用的方法过滤“默认”属性的一种方法是在运行时比较在具有css /内联样式的页面上呈现的元素与在没有外部的相同DOM结构中呈现的相同元素CSS和内联样式被剥离;也许在一个隐藏的iframe中等等。这有意义吗?
根据您的舒适程度,您可以查看Firebug Lite来源的运气。