CSSRule

CSSRule 接口表示一条 CSS 规则。有几种不同的规则类型,在下面的类型常量部分中有悉数列出。

CSSRule 接口指定了所有类型的规则的公共属性,而特定类型的规则的专有属性则在这些规则各自类型的、更专用的接口中被指定。

可以通过 CSSStyleSheetcssRules 列表了解更多关于 CSSRule 的介绍。

所有 CSSRule 实例共有的属性

CSSRule.cssText
返回规则的文本表示. 例如 "h1,h2 { font-size: 16pt }"
CSSRule.parentRule 只读
返回包含规则,否则返回 null。例如:如果此规则是 @media 块中的样式规则, 则其父规则将是该 CSSMediaRule
CSSRule.parentStyleSheet 只读
返回包含此规则的样式表的 CSSStyleSheet 对象。
CSSRule.type 只读
规则类型,表示 CSS 规则类型 类型常量 中的一种类型。

常量

类型常量

CSSRule接口通过一系列整型常量来约束CSSRule的type取值范围,同时这些常量也对应规则的具体实现接口。这些常量和接口的对应关系如下:

类型 对应接口 备注与示例
CSSRule.STYLE_RULE 1 CSSStyleRule 最常见的一种规则。
selector { prop1: val1; prop2: val2; }
CSSRule.IMPORT_RULE 3 CSSImportRule 一条 @import 规则。(Until the documentation is completed, see the interface definition in the Mozilla source code: nsIDOMCSSImportRule.)
CSSRule.MEDIA_RULE 4 CSSMediaRule
CSSRule.FONT_FACE_RULE 5 CSSFontFaceRule
CSSRule.PAGE_RULE 6 CSSPageRule
CSSRule.KEYFRAMES_RULE 7 CSSKeyframesRule
CSSRule.KEYFRAME_RULE 8 CSSKeyframeRule
Reserved for future use 9 应当会在将来被用于定义颜色配置
CSSRule.NAMESPACE_RULE 10 CSSNamespaceRule
CSSRule.COUNTER_STYLE_RULE 11 CSSCounterStyleRule
CSSRule.SUPPORTS_RULE 12 CSSSupportsRule
CSSRule.DOCUMENT_RULE 13 CSSDocumentRule
CSSRule.FONT_FEATURE_VALUES_RULE 14 CSSFontFeatureValuesRule
CSSRule.VIEWPORT_RULE 15 CSSViewportRule
CSSRule.REGION_STYLE_RULE 16 CSSRegionStyleRule
CSSRule.UNKNOWN_RULE 0 CSSUnknownRule
CSSRule.CHARSET_RULE 2 CSSCharsetRule (已在大多数浏览器中被移除)

An up-to-date informal list of constants can be found on the CSSWG Wiki.

语法

使用 WebIDL 语法格式进行描述。

interface CSSRule {
    const unsigned short STYLE_RULE = 1;
    const unsigned short CHARSET_RULE = 2;
    const unsigned short IMPORT_RULE = 3;
    const unsigned short MEDIA_RULE = 4;
    const unsigned short FONT_FACE_RULE = 5;
    const unsigned short PAGE_RULE = 6;
    const unsigned short KEYFRAMES_RULE = 7;
    const unsigned short KEYFRAME_RULE = 8;
    const unsigned short NAMESPACE_RULE = 10;
    const unsigned short COUNTER_STYLE_RULE = 11;
    const unsigned short SUPPORTS_RULE = 12;
    const unsigned short DOCUMENT_RULE = 13;
    const unsigned short FONT_FEATURE_VALUES_RULE = 14;
    const unsigned short VIEWPORT_RULE = 15;
    const unsigned short REGION_STYLE_RULE = 16;
    readonly attribute unsigned short type;
    attribute DOMString cssText;
    readonly attribute CSSRule? parentRule;
    readonly attribute CSSStyleSheet? parentStyleSheet;
};

规范

规范 状态 备注
CSS Object Model (CSSOM)
CSSRule
Working Draft Obsoleted values CHARSET_RULE and UNKNOWN_RULE. Added value NAMESPACE_RULE.
CSS Animations
CSSRule
Working Draft Added values KEYFRAMES_RULE and KEYFRAME_RULE.
CSS Fonts Module Level 4
CSSRule
Working Draft Added value FONT_FEATURE_VALUES_RULE.
CSS Counter Styles Level 3
CSSRule
Candidate Recommendation Added value COUNTER_STYLE_RULE.
CSS Conditional Rules Module Level 3
CSSRule
Candidate Recommendation Added value SUPPORTS_RULE. (DOCUMENT_RULE has been pushed to CSS Conditional Rules Level 4)
Document Object Model (DOM) Level 2 Style Specification
CSSRule
Obsolete Initial definition.

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
CSSRuleChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 9Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0
cssTextChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support Yes
Notes
Full support Yes
Notes
Notes The property normalizes rules and does not return the original verbatim rule text. For example, border-width: 1px; border-style:solid; border-color:white; returns border: 1px solid white;.
Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0
parentRuleChrome Full support 1Edge Full support 12Firefox Full support 1IE ? Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0
parentStyleSheetChrome Full support 1Edge Full support 12Firefox Full support 1IE ? Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0
typeChrome Full support 1Edge Full support 12Firefox Full support 1IE ? Opera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support 18Firefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support 1.0

Legend

Full support  
Full support
Compatibility unknown  
Compatibility unknown
See implementation notes.
See implementation notes.

相关