| // GENERATED CONTENT - DO NOT EDIT |
| // Content was automatically extracted by Reffy into webref |
| // (https://github.com/w3c/webref) |
| // Source: Scroll-linked Animations (https://drafts.csswg.org/scroll-animations-1/) |
| |
| enum ScrollDirection { |
| "block", |
| "inline", |
| "horizontal", |
| "vertical" |
| }; |
| |
| enum ScrollTimelineAutoKeyword { "auto" }; |
| |
| typedef (CSSNumericValue or CSSKeywordish) ContainerBasedOffset; |
| typedef (ContainerBasedOffset or ElementBasedOffset) ScrollTimelineOffset; |
| |
| dictionary ScrollTimelineOptions { |
| Element? source; |
| ScrollDirection orientation = "block"; |
| sequence<ScrollTimelineOffset> scrollOffsets = []; |
| (double or ScrollTimelineAutoKeyword) timeRange = "auto"; |
| }; |
| |
| [Exposed=Window] |
| interface ScrollTimeline : AnimationTimeline { |
| constructor(optional ScrollTimelineOptions options = {}); |
| readonly attribute Element? source; |
| readonly attribute ScrollDirection orientation; |
| readonly attribute FrozenArray<ScrollTimelineOffset> scrollOffsets; |
| readonly attribute (double or ScrollTimelineAutoKeyword) timeRange; |
| }; |
| |
| enum Edge { "start", "end" }; |
| |
| dictionary ElementBasedOffset { |
| Element target; |
| Edge edge = "start"; |
| double threshold = 0.0; |
| }; |
| |
| [Exposed=Window] |
| interface CSSScrollTimelineRule : CSSRule { |
| readonly attribute CSSOMString name; |
| readonly attribute CSSOMString source; |
| readonly attribute CSSOMString orientation; |
| readonly attribute CSSOMString scrollOffsets; |
| readonly attribute CSSOMString timeRange; |
| }; |