在C#中使用MSHTML获取当前样式

Sru*_*uly 5 .net css c# mshtml

我想使用MSHTML来获取html元素的样式.

我想要的是计算的样式,但没有所有默认值.(只有在html和css中设置的那些)

到目前为止,MSHTML有三种类型的样式,样式,currentStyle和runtimeStyle.

style和runtimeStyle只有内联样式,而当前样式包含所有内容,包括继承样式和默认样式.

有没有办法获得当前设置的样式(内联,外部和内部css)但没有所有继承和默认值?

必须有一种方法可以做到这一点,IE开发人员工具栏似乎知道从哪里继承了哪些样式.

o.v*_*.v. 0

当您说要排除“默认”和/或继承的属性而不是内联、外部和内部 css 时,这并不是完全正确的措辞,因为默认属性是通过用户代理 css 设置的。

我想象一种从显式应用的属性中过滤“默认”属性的方法是在运行时比较使用 css/内联样式在页面上呈现的元素与在没有外部 CSS 的情况下在相同 DOM 结构中呈现的相同元素内联样式被剥离;也许在隐藏的 iframe 等中。这有意义吗?

根据您的舒适程度,您可能会幸运地查看Firebug Lite源代码。