W3C DOM2样式规范

CSSStyleSheet对象

CSSSty'leSheet对象包含所有的样式表,包括外部样式表以及嵌入式样式表(通过<style>标签定义).可以同过documentstyleSheets获得该对象,它具有如下属性:

这里要注意:

1 其中cssRules属性在IE中是rules属性

2 这里的href,当遇到<style>嵌入的样式表的时候,在火狐里面会是null,而在IE8里面是一个空字符串""

3 insertRule在IE里面的对应方法为addRule(selector, declaration, index),其中的selector为css选择器,declaration为一个由css属性值对组成的字符串,index为要插入的位置。在insertRule方法中,要将新样式插入末尾,index应该为cssRules数组的长度,而在IE中index应该为-1.

4 deleteRule在IE中对应的方法为removeRule(index),其中的index为要删除的样式(或者规则)在样式表中的位置。在IE中,如果要删除末尾的规则,index不是-1,而是样式(或者规则)在样式表中的真实位置。

5 如果要获取media属性里面包含的字符串值,W3C里面应该是styleSheet.media.mediaText(其中Safari会自动在末尾加上逗号),而在IE中是styleSheet.media

6 获得引入样式表的标签<link>或者<style>,在W3C里面是styleSheet.ownerNode,而在IE里面是styleSheet.owningElement。

CSSStyleRule对象

每个CSSStyleSheet对象里面包含一组CSSStyleRule对象,它们具有以下属性:

通过cssRules或者rules的style属性获取的总是样式表中的属性值,而不管标签元素有没有内联的style属性

CSSStyleDeclaration对象

这个对象具有的属性如下:

这三个方法是W3C里面的方法,而且propertyName是world-world类型(如:background-color),IE不支持

原文地址:https://www.cnblogs.com/chaoguo1234/p/2953092.html