我想使用CSS样式,所以我获得了有关此HTML的必要信息
<img src="imagelink" id="IMG" style="margin: 5px 4em 3% 2%;">
通过此代码
if(window.getComputedStyle){
style = window.getComputedStyle(dom, null);
for(var i = 0, l = style.length; i < l; i++){
var prop = style[i];
var val = style.getPropertyValue(prop);
returns[prop] = val;
}
return returns;
}
直到现在,我只使用“ px”,所以一切正常。 现在,我尝试与其他部门合作,只是麻烦了。
从而不是5px, 4em, 3%, 2%
,我从calculatedStyle接收了重新计算“ px”的绝对值。
"margin-inline-start": "21.3667px"
"margin-left": "21.3667px"
"margin-right": "48px"
"margin-top": "5px"
为什么会这样,如何预防呢?我想使用内联CSS中定义的单位类型。
重新计算这将不起作用,因为我无法在calculatedStyle中看到任何有关原始种类不是“ px”的信息。
非常感谢您帮助理解和解决该问题。
更新
我环顾四周,以找到一种方法来获取元素的所有匹配规则(css类,内联样式,@ import和@media)。但是我发现和阅读的所有东西都已经完成了一半,或者已经过时了,现在将无法工作)...在这一点上,我感到沮丧