使用JavaScript检索css元素而不是html

使用JavaScript检索css元素而不是html,javascript,html,css,Javascript,Html,Css,我了解document.querySelector如何在.html文件中检索css元素,但是如何从.css文件中检索内容呢 my.css文件的示例: canvas { background-color: DarkBlue; } 还有我的.js文件中的内容(我知道它只适用于HTML,所以我想知道CSS的等效内容,我不想在HTML文件中设置样式,我想保留单独的CSS文件): 您不想解析CSS文件,尽管您可以。最好使用javascript(即画布)获取元素,然后使用JS获取该元素的样式 这在这里得到

我了解document.querySelector如何在.html文件中检索css元素,但是如何从.css文件中检索内容呢

my.css文件的示例:

canvas {
background-color: DarkBlue;
}
还有我的.js文件中的内容(我知道它只适用于HTML,所以我想知道CSS的等效内容,我不想在HTML文件中设置样式,我想保留单独的CSS文件):


您不想解析CSS文件,尽管您可以。最好使用javascript(即画布)获取元素,然后使用JS获取该元素的样式

这在这里得到了很好的回答,并提供了一个很好的功能,使其变得更简单:


祝你好运。

你想检索html元素的css属性吗?
我了解document.querySelector如何在.html文件本身中检索css元素
-显然你不了解querySelector的功能-它使用css选择器检索html元素-而不是“css元素”-如果你想获取“计算”css对于一个元素,使用
getComputedStyle
getDefaultComputedStyle
-请参阅文档以了解区别
css
元素除了伪元素之外,实际上并不存在。它们仍然是HTML元素。您只需按其类选择它们
var canvas = document.querySelector('canvas');
function getStyle(oElm, strCssRule){
    var strValue = "";
    if(document.defaultView && document.defaultView.getComputedStyle){
        strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
    }
    else if(oElm.currentStyle){
        strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
            return p1.toUpperCase();
        });
        strValue = oElm.currentStyle[strCssRule];
    }
    return strValue;
}

var elementFontSize = getStyle(document.getElementById("container"), "font-size");