【问题标题】:Is it possible to change CSS string text to css code in a project?是否可以在项目中将 CSS 字符串文本更改为 CSS 代码?
【发布时间】:2020-08-15 06:44:32
【问题描述】:

我想将 String 变量中的网站源代码转换为代码并使用它。

我该怎么做?

var cssStr = 'a{text-decoration: none}';

// to css code

a {
   text-decoration: none
}

【问题讨论】:

标签: javascript html css web


【解决方案1】:

试试这个:

var cssStr = 'a{text-decoration: none} a{color: red}';

let text = document.getElementById('yourId');
var style = document.createElement('style');
style.type = 'text/css';
style.innerHTML = cssStr;
text.appendChild(style);
<a href=# id="yourId"><p> Your Text </p></a>

【讨论】:

    【解决方案2】:

    你可以有以下脚本:

    var cssStr = 'a{text-decoration: none}';
    let styleTag = document.createElement('style');
    styleTag.innerHTML = cssStr;
    document.firstChild.appendChild(styleTag);
    

    这基本上会创建<style></style> 并将其附加到html。如果您有特定的<style> 标签,请选择它而不是创建新标签。

    【讨论】:

      【解决方案3】:
      var element = document.getElementById("myDIV");
      var style = document.createElement('style');
      style.type = 'text/css';
      style.innerHTML = '.cssClass { text-decoration: none; }';
      document.getElementsByTagName('head')[0].appendChild(style);
      
      element.className = 'cssClass';
      

      【讨论】:

        【解决方案4】:

        这就是CSSStyleSheet.insertRule 的用途:

        let styleSheet = document.styleSheets[0];
        styleSheet.insertRule('.demo { background: red; color: white; }');
        <div class="demo">test</div>

        【讨论】:

          猜你喜欢
          • 2014-10-16
          • 2012-08-09
          • 1970-01-01
          • 2021-06-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-05-07
          相关资源
          最近更新 更多