Scroll-Driven Animations with CSS
summary
Claim: CSS scroll-driven animations let animations scrub with scroll offset without JavaScript, using a new scroll() timeline and view() timeline. Demos include a working Cover Flow implementation, a reading-progress bar, cover-to-header shrink, and sync to video/3D objects — all running on the compositor (Chrome 115+, Safari TP, Firefox nightly experimental) so animations avoid main‑thread jank. Limitations: some things still run on the main thread (clip path, custom properties), animation-range/view ranges control when animations start and end.
AI-written summary · about
chapters (33)
- 0:00Introduction
- 1:06What are scroll-driven animations
- 2:30Why avoid JS for scroll animations
- 4:43CSS animations and compositor advantage
- 5:49Scroll-driven animation spec
- 6:55Respecting user motion preferences
- 7:36Progressive enhancement and browser support
- 7:59Understanding scroll timelines
- 9:44Creating scroll timeline with CSS
- 11:53Simplifying scroll timeline syntax
- 12:59Named scroll timelines and nested scrollers
- 14:21Demo fixing header with scroll animation
- 15:45Animation range for scroll distance control
- 17:13Introducing view timelines
- 18:16Demo: view timeline with album covers
- 20:21Reducing view timeline instances with named timelines
- 21:24Animation range values for view timelines
- 23:10Visualizing view timeline ranges
- 24:32Combining entry and exit animations
- 25:55Demo: partial entry animations
- 26:57Extended keyframes for entry and exit effects
- 27:17Using calc with animation ranges
- 28:01Common pitfalls with animation shorthand
- 28:41Broadening timeline scope for non-child elements
- 29:48Scroll-driven vs scroll-triggered animations
- 30:28Hacking scroll-triggered effects with style queries
- 31:35Future CSS animation triggers
- 31:55Syncing videos and 3D objects to scroll
- 32:17Scroll-driven view transitions demo
- 32:38Limitations of compositor animations
- 33:44Debugging scroll animations in DevTools
- 34:28Chrome extension for scroll debugging
- 35:11Resources and closing
related talks
29mScroll linked Animations with CSS
40mThe Future with Scroll-Driven Animations in CSS
53mScroll-Enhanced Experiences
07mScroll-Linked Animations
01h 04mLiven up your websites with Scroll-Driven Animations & View Transitions
39mModern CSS for Creative Developers
36mYou might not need JS
38mReturn to Web Animation Wonderland
