CSSRule: type property

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

The read-only type property of the CSSRule interface is a deprecated property that returns an integer indicating which type of rule the CSSRule represents.

If you need to distinguish different types of CSS rule, a good alternative is to use constructor.name:

js
const sheets = Array.from(document.styleSheets);
const rules = sheets.map((sheet) => Array.from(sheet.cssRules)).flat();

for (const rule of rules) {
  console.log(rule.constructor.name);
}

Value

CSSRule.STYLE_RULE (1)

The rule is a CSSStyleRule, the most common kind of rule: selector { prop1: val1; prop2: val2; }.

CSSRule.IMPORT_RULE (3)

The rule is a CSSImportRule and represents an @import rule.

CSSRule.MEDIA_RULE (4)

The rule is a CSSMediaRule.

CSSRule.FONT_FACE_RULE (5)

The rule is a CSSFontFaceRule

CSSRule.PAGE_RULE (6)

The rule is a CSSPageRule.

CSSRule.KEYFRAMES_RULE (7)

The rule is a CSSKeyframesRule.

CSSRule.KEYFRAME_RULE (8)

The rule is a CSSKeyframeRule.

CSSRule.NAMESPACE_RULE (10)

The rule is a CSSNamespaceRule.

CSSRule.COUNTER_STYLE_RULE (11)

The rule is a CSSCounterStyleRule.

CSSRule.SUPPORTS_RULE (12)

The rule is a CSSSupportsRule.

CSSRule.FONT_FEATURE_VALUES_RULE (14)

The rule is a CSSFontFeatureValuesRule.

The values CSSRule.UNKNOWN_RULE (0), CSSRule.CHARSET_RULE (2), CSSRule.DOCUMENT_RULE (13), CSSRule.VIEWPORT_RULE (14), and CSSRule.REGION_STYLE_RULE (16) cannot be obtained anymore.

Examples

js
const rules = document.styleSheets[0].cssRules;
console.log(rules[0].type);

Specifications

Specification
CSS Object Model (CSSOM)
# concept-css-rule-type

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
type
Deprecated

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Deprecated. Not for use in new websites.