zoukankan      html  css  js  c++  java
  • JavaScript脚本化CSS样式表

    在使用JavaScript脚本化操作CSS样式表的时候,必须要使用到两个对象:

      1,元素对象:也就是<link>元素与<style>元素

      2,CSSStyleSheet对象:与当前文档关联的在一起的样式表,通过document.styleSheets获取,该对象是只读的类数组对象(由CSSStyleSheet对象组成的类数组)。

      注:可以通过在<link>与<style>元素中添加title属性,这样返回的CSSStyleSheet对象中的title属性可以与之对应起来。

    开启和关闭样式表:

      每个CSSStyleSheet对象都有一个disabled属性,可以用来查询样式表是否在使用,false时表示该样式表在使用,true时表示浏览器关闭忽略该样式表,因此,可以通过将disabled属性设置为true,来关闭指定样式表的应用。

    .box{
                width:600px;
                height:600px;
                border:3px solid black;
            }
            .box2{
                width:300px;
                height:300px;
                border:2px solid red;
            }
            .box3{
                width:100px;
                height:100px;
                border:1px solid skyblue;
            }
    <body>
          <div class="box" style="margin:20px;position: relative;">
              <div class="box2" style="position: absolute;padding: 20px;">
                  <div class="box3" style="-webkit-clip:rect(0px 50px 50px 50px);background-color: skyblue"></div>6666666
              </div>
          </div>
    
          <button onclick="test()">取消</button>
      </body>
    function test(){
              document.styleSheets[0].disabled = true;
           }

      点击取消按钮前:

      点击取消按钮后:

    样式表的其他操作:

      document.styleSheets数组由CSSStyleSheet对象组成,在标准API中,每个CSSStyleSheet对象都有一个cssRules数组(由CSSStyleRule对象组成),包含了样式表的所有规则(IE中为rules)。

      可以在style属性中直接修改规则。

      标准API中还定义了insertRule()与deleteRule()方法来添加和删除规则。

      添加一条规则:document.styleSheets[0].insertRule("h1{border:1px solid red;}",0);

      删除一条规则:document.styleSheets[0].deleteRule(要删除的CSSStyleRule数组的下标);

      IE不支持这两个方法,它有自己的实现方法:addRule(),removeRulr()。和标准API唯一的不同就是addRule方法的参数为选择器文本和样式文本分别作为参数传递。

  • 相关阅读:
    Eclipse编译 make: arm-linux-gcc:命令未找到
    ubuntu如何启用root帐号
    jlinkV8指示灯不亮 usb无法识别的问题。
    Normal Equation Algorithm求解多元线性回归的Octave仿真
    Normal Equation Algorithm
    一维高斯分布与多维高斯分布
    Locally weighted regression algorithm
    Linear Regression and Gradient Descent
    导数与偏导数 Derivative and Partial Derivative
    向量的内积、长度和正交性
  • 原文地址:https://www.cnblogs.com/huangzhenghaoBKY/p/10003242.html
Copyright © 2011-2022 走看看