Animations That Respond to Your Scroll
No JavaScript. No Intersection Observer. Pure CSS animation-timeline: view() ties any animation directly to scroll position. Every element on this page uses it.
This section animated in as you scrolled — that's scroll-driven animations. Every .reveal element on this page fades and slides in using only CSS.
@keyframes reveal {
from { opacity: 0; translate: 0 40px; }
to { opacity: 1; translate: 0 0; }
}
.reveal {
animation: reveal linear both;
animation-timeline: view();
animation-range: entry 0% entry 100%;
}