gpt4 book ai didi

javascript - 如何从使用 insertRule 添加的样式中检索 css 文本?

转载 作者:太空宇宙 更新时间:2023-11-04 06:14:05 25 4
gpt4 key购买 nike

我有一个标签,其内容已使用 insertRule 动态添加功能。我想检索相关样式的文本内容

我试过 document.getElementById('style').innerHTMLdocument.getElementById('style').text,但它们返回空字符串

// Add style a tag to head
var style = document.createElement("style");
style.id = "style",
style.type = "text/css",
document.head.appendChild(style);
var sheet = style.sheet;
// Insert some stylesheet rules
sheet.insertRule("p {background-color: red}", sheet.length);
sheet.insertRule("p {color: white}", sheet.length);
// Try to retrieve the css text
document.getElementById('style').innerHTML; // returns ""
document.getElementById('style').text; // returns undefined

我希望获得样式表中的文本 css。比如上面的样式必须返回p {背景颜色:红色}
p {颜色:白色}

最佳答案

var style = document.createElement("style");
style.id = "style",
style.type = "text/css",
document.head.appendChild(style);
var sheet = style.sheet;
// Insert some stylesheet rules
sheet.insertRule("p {background-color: red}", sheet.length);
sheet.insertRule("p {color: white}", sheet.length);
sheet.insertRule("div {color: green}", sheet.length);

function getRule(){
var cssFullText = "";
[...sheet.cssRules].forEach(({cssText})=> cssFullText += `${cssText} `);
console.log(cssFullText)
}
<p>Test line</p>
<p>Test line</p>
<button onClick="getRule()">Get css HTML</button>

关于javascript - 如何从使用 insertRule 添加的样式中检索 css 文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56148318/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com