删除内联 CSS 会影响样式表中定义的样式

Removing inline CSS affects styles defined in stylesheet

我遇到了一个奇怪的行为。

我有一个脚本,它使用 computedStyle 方法将 内联 CSS 应用于其样式表中的元素。

这是一种复制富文本而不是纯文本的方法。

但是复制之后,我需要删除style=""属性

发生这种情况时,一些样式属性(如 color 会消失),而我可以在检查器中看到该属性仍通过其 class.[=18= 链接到我的元素]

看那里: https://jsfiddle.net/sxybrcug/color消失但border-color没问题)

你知道发生了什么事吗?

谢谢

看起来内联样式也被添加到您的 container div,但是在单击按钮时,只有 <p> 元素上的内联样式被删除。所以 p 继续继承 container 的内联样式,具体来说, -webkit-text-fill-color 设置为黑色,覆盖 color 属性.

如果你加上

container.setAttribute("style", "");

对于您的点击侦听器,它会删除所有内联样式并且 p 元素的颜色显示为红色。