我想返回一个包含CSS规则所有内容的字符串,就像您在嵌入式样式中看到的格式一样。我希望能够在不知道特定规则中包含什么的情况下执行此操作,因此我不能仅通过样式名称(如.style.width等)将它们拉出。
.style.width
CSS:
.test { width:80px; height:50px; background-color:#808080; }
到目前为止的代码:
function getStyle(className) { var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules for(var x=0;x<classes.length;x++) { if(classes[x].selectorText==className) { //this is where I can collect the style information, but how? } } } getStyle('.test')
以scunliffe的答案为基础:
function getStyle(className) { var cssText = ""; var classes = document.styleSheets[0].rules || document.styleSheets[0].cssRules; for (var x = 0; x < classes.length; x++) { if (classes[x].selectorText == className) { cssText += classes[x].cssText || classes[x].style.cssText; } } return cssText; } alert(getStyle('.test'));