CSSRule.webidl (2198B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 4 * You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * The origin of this IDL file is 7 * https://drafts.csswg.org/cssom/#the-cssrule-interface 8 * https://drafts.csswg.org/css-animations/#interface-cssrule 9 * https://drafts.csswg.org/css-counter-styles-3/#extentions-to-cssrule-interface 10 * https://drafts.csswg.org/css-conditional-3/#extentions-to-cssrule-interface 11 * https://drafts.csswg.org/css-fonts-3/#om-fontfeaturevalues 12 */ 13 14 // https://drafts.csswg.org/cssom/#the-cssrule-interface 15 [Exposed=Window] 16 interface CSSRule { 17 18 const unsigned short STYLE_RULE = 1; 19 const unsigned short CHARSET_RULE = 2; // historical 20 const unsigned short IMPORT_RULE = 3; 21 const unsigned short MEDIA_RULE = 4; 22 const unsigned short FONT_FACE_RULE = 5; 23 const unsigned short PAGE_RULE = 6; 24 // FIXME: We don't support MARGIN_RULE yet. 25 // XXXbz Should we expose the constant anyway? 26 // const unsigned short MARGIN_RULE = 9; 27 const unsigned short NAMESPACE_RULE = 10; 28 [BinaryName="typeForBindings"] readonly attribute unsigned short type; 29 attribute UTF8String cssText; 30 readonly attribute CSSRule? parentRule; 31 readonly attribute CSSStyleSheet? parentStyleSheet; 32 }; 33 34 // https://drafts.csswg.org/css-animations/#interface-cssrule 35 partial interface CSSRule { 36 const unsigned short KEYFRAMES_RULE = 7; 37 const unsigned short KEYFRAME_RULE = 8; 38 }; 39 40 // https://drafts.csswg.org/css-counter-styles-3/#extentions-to-cssrule-interface 41 partial interface CSSRule { 42 const unsigned short COUNTER_STYLE_RULE = 11; 43 }; 44 45 // https://drafts.csswg.org/css-conditional-3/#extentions-to-cssrule-interface 46 partial interface CSSRule { 47 const unsigned short SUPPORTS_RULE = 12; 48 }; 49 50 // Non-standard extension for @-moz-document rules. 51 partial interface CSSRule { 52 [ChromeOnly] 53 const unsigned short DOCUMENT_RULE = 13; 54 }; 55 56 // https://drafts.csswg.org/css-fonts-3/#om-fontfeaturevalues 57 partial interface CSSRule { 58 const unsigned short FONT_FEATURE_VALUES_RULE = 14; 59 };