This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
The CSSKeyframesRule interface describes an object representing a complete set of keyframes for a CSS animation. It corresponds to the contains of a whole @keyframes at-rule. It implements the CSSRule interface with a type value of 7 (CSSRule.KEYFRAMES_RULE).
As a CSSRule, CSSKeyframesRule also implements the properties of these interfaces. It has two properties :
CSSKeyframesRule.nameanimation-name property.CSSKeyframesRule.cssRules Read only
CSSRuleList of the CSS rules in the media rule.As a CSSRule, CSSKeyframesRule also implements the methods of that interface. It has three specific methods:
CSSKeyframesRule.appendRule()DOMString containing a keyframe in the same format as an entry of a @keyframes at-rule. If it contains more than one keyframe rule, a DOMException with a SYNTAX_ERR is thrown.CSSKeyframesRule.deleteRule()DOMString resolving as a number between 0 and 1.CSSKeyframesRule.findRule()DOMString containing an index of the keyframe to be returned, resolving to a number between 0 and 1. If no such keyframe exists, findRule returns null.| Specification | Status | Comment |
|---|---|---|
| CSS Animations The definition of 'CSSKeyframesRule' in that specification. | Working Draft | Initial definition |
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) |
5.0 (5.0) -moz 48 (48) | 10 | 12 -o 12.10 | 4.0 |
appendRule | (Yes)[1] | ? |
5.0 (5.0)[2] 22.0 (22.0) | 10[3] | (Yes)[3] | (Yes)[3] |
| Feature | Android | Android Webview | Edge | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|---|
| Basic support | ? | (Yes) | (Yes) |
5.0 (5.0) -moz 48 (48) | (Yes) | 12 -o 12.10 | (Yes) | (Yes) |
appendRule | ? | (Yes)[1] | ? | 5.0 (5.0)[2] 22.0 (22.0) | (Yes)[3] | (Yes)[3] | (Yes)[3] | (Yes)[1] |
[1] The non-standard name insertRule() was removed in Chrome 45.
[2] Gecko 5.0 implemented this with the non-standard name insertRule(). In Gecko 22.0 it was changed to the standard name appendRule.
[3] Internet Explorer 10, Safari and Opera implement this with the non-standard name insertRule().
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CSSKeyframesRule