如何获取元素的完整CSS(类,内联,@ import,@ media)

时间:2019-02-14 11:59:36

标签: javascript css

我想使用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)。但是我发现和阅读的所有东西都已经完成了一半,或者已经过时了,现在将无法工作)...在这一点上,我感到沮丧

0 个答案:

没有答案