Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
CSS Scroll-gesteuerte Animationen
Das CSS Scroll-gesteuerte Animationen Modul bietet Funktionen, die auf dem CSS-Animationen-Modul und der Web Animations API basieren. Es ermöglicht Ihnen, Eigenschaftswerte entlang einer scrollbasierten Zeitleiste zu animieren, anstatt der standardmäßigen zeitbasierten Dokumentzeitleiste. Das bedeutet, dass Sie ein Element durch Scrollen des Elements, seines Scroll-Containers oder seines Wurzelelements anstatt nur durch den Zeitablauf animieren können.
Scroll-gesteuerte Animationen in Aktion
Sie können den Scroller, der die Animation steuert, entweder durch Benennen der Animation oder mit der scroll Funktion definieren.
<main>
<div></div>
</main>
main {
scroll-timeline: --main-timeline;
}
div {
animation: background-animation linear;
animation-timeline: scroll(nearest inline);
}
div::after {
animation: shape-animation linear;
animation-timeline: --main-timeline;
}
@layer animations {
@keyframes background-animation {
0% {
background-color: palegoldenrod;
}
100% {
background-color: magenta;
}
}
@keyframes shape-animation {
0% {
left: 0;
top: 0;
background-color: black;
}
50% {
top: calc(100% - var(--elSize));
left: calc(50% - var(--elSize));
background-color: red;
}
100% {
left: calc(100vw - var(--elSize));
top: 0;
rotate: 1800deg;
background-color: white;
}
}
}
@layer page-setup {
:root {
--elSize: 50px;
}
main {
height: 90vh;
overflow: scroll;
border: 1px solid;
margin: 5vh auto;
}
div {
height: 400vh;
width: 400vw;
}
div::after {
content: "";
border: 1px solid red;
height: var(--elSize);
width: var(--elSize);
position: absolute;
border-radius: 20px;
corner-shape: superellipse(-4);
}
}
@layer no-support {
@supports not (scroll-timeline: --main-timeline) {
body::before {
content: "Your browser doesn't support scroll-driven animations.";
background-color: wheat;
display: block;
text-align: center;
}
}
}
Scrollen Sie das Element in der Inline-Richtung, um seine Hintergrundfarbe zu ändern. Scrollen Sie es vertikal, um den generierten Inhalt zu bewegen, zu drehen und die Farben zu ändern.
Referenz
>Eigenschaften
animation-rangeKurzschreibweisescroll-timelineKurzschreibweisetimeline-scopeview-timelineKurzschreibweise
Datentypen und Werte
Funktionen
Schnittstellen
Leitfäden
- Scroll-gesteuerte Animationszeitleisten
-
Scroll-gesteuerte Animationszeitleisten und Erstellung scroll-gesteuerter Animationen.
Verwandte Konzepte
Spezifikationen
| Specification |
|---|
| Scroll-driven Animations> |
Siehe auch
- Elemente beim Scrollen mit scroll-gesteuerten Animationen animieren über developer.chrome.com (2023)