DOM “style” 属性与实际 CSS 样式之间的关系

Relationship between DOM "style" property and actual CSS styles

本文关键字:样式 CSS 之间 关系 style 属性 DOM      更新时间:2023-09-26

我有一个元素,我(直接)对其应用了几个CSS属性。在元素由 DOM 处理后,我尝试检查其 style 属性对象,并看到所有值(包括颜色)都是空字符串。对此颇为惊讶。

DOM 元素的 style 属性的目的是什么?是存储dynamically定义的样式吗?我见过人们在jQuery中做一些事情,比如:

$('#el').removeAttr('style'); 

我猜浏览器将其解释为removeProp('style')它取消了应用于元素的所有样式,并通过CSS文件删除了初始样式。

如果属性未按预期执行,则应查阅有关属性的文档。

MDN Element.style 文章描述了它的实际作用。它还提到了如何实现你想做的事情。

至于删除,请在浏览器控制台上逐步尝试以下操作:

let el = document.querySelector("body")
el.style.color = "#fff"
el.getAttribute("style")
el.removeAttribute("style")

Jquery 包装了浏览器 API,因此在尝试了解 jQ 在其上添加的行为之前,您需要先了解这些 API。