我试图了解 Web 文档中内联样式和 CSS 对象模型 (CSSOM) 之间的关系。具体来说,我想知道直接应用于元素的内联样式(通过 HTML
style
属性或 JavaScript 的 element.style
)是否是 CSSOM 的一部分或由 DOM 处理。
内联样式直接应用于元素,如下所示:
<div style="color: blue; font-size: 20px;">This text is styled with inline CSS.</div>
或使用 JavaScript:
const element = document.getElementById("myElement");
element.style.color = "blue";
element.style.fontSize = "20px";
我的问题是:
document.styleSheets
)访问,还是只能通过元素的 style
属性访问?我的理解是:
<link>
)、内部样式(<style>
标签)中包含的所有 CSS 规则以及使用 JavaScript 动态添加的规则(例如,insertRule()
)。它不会过滤掉它们,也没有责任以最高优先级选出获胜者。它只是将所有相应的 css 属性附加到适当的树节点,甚至是冲突的节点。你觉得我是错还是对?我看到了相互矛盾的解释,如果可能的话,我想得到一个带有参考文献的具体答案。任何有关内联样式是否被正式视为 CSSOM 的一部分或仅有助于计算样式的澄清都会有所帮助。