IE下是这个:document.styleSheets[i].rules
FF:document.styleSheets[i].cssRules
chrome?

解决方案 »

  1.   

    http://www.quirksmode.org/dom/changess.html
    和IE一样。。你自己试试
      

  2.   

    一试 二查文档 三谷歌 四csdn 无发帖 江湖规矩我不懂吗 没办法了
      

  3.   

    http://stackoverflow.com/
    你去这上面提试试。。看看外国人有什么看法
      

  4.   

    用js修改css,你不觉得是件十分危险的事情吗?
      

  5.   


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="gb2312" />
    <title></title>
    </head>
    <body>
    <div class="a">111111111</div>
    <div class="b">111111111</div>
    <div class="c">111111111</div>
    <script>
    function $(el){
    return typeof el == 'string' ? document.getElementById(el) : el;
    }

    ;(function(w, d){
    var ie = !+[1,];
    var o = null;
    var styleSheet = function(){
    this.init();
    };
    styleSheet.prototype = {
    init: function(){
    var h = d.getElementsByTagName('head')[0];
    var s = d.createElement('style');
    h.appendChild(s);
    o = d.styleSheets[d.styleSheets.length-1];
    },
    add: function(selector, style){
    ie ?
    o.addRule(selector, style)
    :
    o.insertRule(selector + "{" + style + "}", o.cssRules.length);
    },
    del: function(index){
    ie ?
    o.removeRule(index)
    :
    o.deleteRule(index);
    },
    getRules: function(){
    return ie ?  
    o.rules
    :
    o.cssRules;
    },
    getRule: function(selector){
    var rules = this.getRules();
    for(var i = 0, len = rules.length; i < len; i++){
    var r = rules[i];
    if( r.selectorText == selector ){
    return r;
    }
    }
    return null;
    }
    }
    w.styleSheet = styleSheet;
    })(window, document);
    var s = new styleSheet;
    s.add('.a', 'color:red;')
    s.add('.a', 'font-size:111px;')
    s.add('.a', 'font-size:11px;')
    s.add('.b', 'color:blue;')
    s.del(2)  // 删除 font-size:11px;
    alert( s.getRule('.a').style['color'] )
    </script>
    </body>
    </html>
    参考下。