在元素的样式中,我有几个内联CSS声明,包括一个背景的简写声明
<div style="background: var(--bg-white); ... "></div>
但是当遍历www.example.com时,shorthand属性看起来像是被错误地扩展了HTMLElement.style the shorthand property looks like it's wrongly expanded
for (const declaration of Array.from(target.style)) {
const value = target.style.getPropertyValue(declaration)
console.log(`${declaration}: ${value}`)
}
这应该打印出background-color: var(--bg-white)
每HTMLElement.style documentation on MDN,但我得到background-color: ''
展开速记属性。如果设置style ="border-top:1px solid black”,则改为设置手写体属性(border-top-color、border-top-style和border-top-width)。
以前有人遇到过吗?
1条答案
按热度按时间wrrgggsh1#
使用
getComputedStyle()
获取计算值。速记属性的扩展方式与style
中的相同。style
只包含分配给元素的内联样式,不计算任何css属性(内联和继承)。所以在这种情况下background-color
是空的。https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/stylehttps://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle