Keyframes und gestaffelte Animationen
Komplexe, gestaffelte Animationen erstellen
Keyframes und gestaffelte Animationen ist eine kostenlose Angular Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Angular Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Angular Academy-Kurs umfasst insgesamt 4 Lektionen.
Mehrstufige Animationen
Einfache Übergänge führen von A nach B. Für mehrstufige Bewegungen wie Hüpfen, Pulsieren oder einen Farbverlauf bietet Angular keyframes. Um viele Elemente nacheinander zu animieren, steht stagger zur Verfügung.
Die Funktion keyframes
keyframes übernimmt ein Array aus style-Schritten. Jeder Schritt enthält einen offset zwischen 0 und 1, der seine Position innerhalb der Animationsdauer angibt.
animate('1s', keyframes([
style({ opacity: 0, offset: 0 }),
style({ opacity: 0.5, offset: 0.3 }),
style({ opacity: 1, offset: 1 })
]))offset verstehen
offset ist der Anteil an der gesamten Animationsdauer. 0 steht für den Anfang, 1 für das Ende. Die Offsets sollten im Array ansteigen.
Ein Hüpfeffekt
Mit Keyframes können Sie über das Ziel hinausschießen und sich anschließend einpendeln, um einen Hüpfeffekt zu erzeugen.
keyframes([
style({ transform: 'translateY(0)', offset: 0 }),
style({ transform: 'translateY(-20px)', offset: 0.5 }),
style({ transform: 'translateY(0)', offset: 1 })
])Offsets weglassen
Wenn Sie offset weglassen, verteilt Angular die Keyframes gleichmäßig über die Animationsdauer.
keyframes([
style({ opacity: 0 }),
style({ opacity: 1 })
])Die Funktion query
Um untergeordnete Elemente eines Host-Elements zu animieren, verwenden Sie query, um sie innerhalb eines Übergangs auszuwählen.
transition('* => *', [
query(':enter', [
style({ opacity: 0 })
])
])Die Funktion stagger
stagger fügt zwischen den Animationen der einzelnen ausgewählten Elemente einen zeitlichen Versatz ein und erzeugt dadurch einen Kaskadeneffekt.
query(':enter', [
style({ opacity: 0 }),
stagger(100, [
animate('300ms', style({ opacity: 1 }))
])
])Eine Liste mit stagger animieren
Kombinieren Sie query und stagger in einem Trigger des Listencontainers, damit die Elemente nacheinander eingeblendet werden.
trigger('listAnim', [
transition('* => *', [
query(':enter', [
style({ opacity: 0 }),
stagger(80, animate('250ms', style({ opacity: 1 })))
], { optional: true })
])
])Das optionale Flag
Übergeben Sie { optional: true } an query, damit die Animation keinen Fehler verursacht, wenn keine passenden Elemente vorhanden sind.
Negatives Staggering
Ein negativer Wert in stagger kehrt die Reihenfolge um, sodass die letzten Elemente zuerst animiert werden. Das ist beispielsweise für Kaskaden beim Ausblenden nützlich.
stagger(-50, animate('200ms', style({ opacity: 0 })))Hinweis zur Performance
Das Staggering vieler Elemente kann die Performance beeinträchtigen. Halten Sie die Dauer pro Element kurz und bevorzugen Sie transform und opacity, damit die Animationen auf der GPU ausgeführt werden.
Kurzer Check
Testen Sie Ihr Verständnis von Keyframes und Staggering.
Zusammenfassung
Sie haben gelernt, dass keyframes mehrstufige Bewegungen mithilfe von offset-Werten definiert, während query und stagger viele Elemente kaskadenartig animieren. Verwenden Sie { optional: true } zur Sicherheit und bevorzugen Sie GPU-freundliche Eigenschaften.
Häufig gestellte Fragen
Ist die Lektion „Keyframes und gestaffelte Animationen“ kostenlos?
Ja — der vollständige Text von „Keyframes und gestaffelte Animationen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Angular Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Angular Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Keyframes und gestaffelte Animationen“?
Komplexe, gestaffelte Animationen erstellen Du übst Angular Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Angular Academy zu starten?
Keine Vorkenntnisse erforderlich. Angular Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „Keyframes und gestaffelte Animationen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Angular Academy-Lektion Code schreiben und ausführen?
Ja. Jede Angular Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Animationsgrundlagen: trigger und state
- Übergänge und Timing
- Animationen beim Ein- und Ausblenden
- Keyframes und gestaffelte Animationen