Frontend
October 16, 2026
6 views
2 min read

animation-trigger

Curated by Patrick
Source: CSS-Tricks
animation-trigger
Tech Daily Byte Analysis

The Chrome team has shipped a draft implementation of the CSS animation‑trigger property, defined in the Animation Triggers specification. The property pairs a named trigger—set via timeline‑trigger or event‑trigger—with actions such as play, pause, reset, or replay, allowing a CSS animation to wait until a scroll position or DOM event fires. In practice, a developer can declare a timeline trigger on a parent element (e.g., `timeline-trigger: --show scroll() contain / cover;`) and then attach `animation-trigger: --show play;` to a child, eliminating the need for Intersection Observer callbacks or external animation libraries. Chrome 145 is the only browser that currently implements this, and the spec remains in editor’s draft, meaning the syntax and behavior could still evolve.

This move extends the long‑standing trend of moving interaction logic into the stylesheet layer. Earlier CSS features—such as view timelines, scroll‑linked animations, and the Web Animations API—already let developers tie visual changes to scroll or viewport changes, but they required JavaScript glue to fire at a specific moment. By providing a declarative trigger mechanism, Chrome is positioning CSS as a full‑stack solution for common UI patterns like lazy‑load reveals, scroll‑based storytelling, and click‑activated effects. Competing browsers have lagged in adopting similar capabilities, and JavaScript‑centric libraries like GSAP or ScrollMagic continue to dominate the market. If other engines follow suit, the balance could shift toward lighter, CSS‑only implementations that reduce bundle size and simplify maintenance.

The immediate impact is limited: only Chrome 145+ users will see the feature, and developers must guard against the draft status with feature queries (`@supports (animation-trigger: --x play)`). Because the spec may change before reaching Candidate Recommendation, early adopters risk future refactoring. Nonetheless, the performance promise—animations driven directly by the compositor without a JavaScript bridge—makes the property attractive for high‑frame‑rate sites. Watch for Chrome’s upcoming release notes, for any sign that Edge or Safari plan to mirror the implementation, and for the spec’s progression to a stable recommendation, which will likely trigger broader tooling support and polyfill strategies.

Key Takeaways

Chrome 145+ now parses `animation-trigger`, enabling pure‑CSS scroll‑or event‑based animation starts.

The property works with `timeline-trigger` to replace Intersection Observer for many reveal effects.

Because the spec is still an editor’s draft, developers should use `@supports` checks and expect possible syntax changes.

Adoption will hinge on other browsers implementing the feature and the spec reaching Candidate Recommendation status.

About the Source

This analysis is based on reporting by CSS-Tricks. Here is a short excerpt for context:

The CSS animation-trigger property allows you to delay the start of a CSS animation until a specific trigger occurs. animation-trigger originally handwritten and published with love on CSS-Tricks. You should really get the newsletter as well.
Read the original at CSS-Tricks

More in Frontend