277 of 313 menu

Eigenschaft animation-fill-mode

Die Eigenschaft animation-fill-mode legt fest, in welcher Position die Animation nach dem Ende stoppen soll. Standardmäßig kehrt die Animation zurück zum ursprünglichen Wert und das kann nicht sehr schön aussehen.

Syntax

Selektor { animation-fill-mode: backwards | forwards | both | none; }

Werte

Wert Beschreibung
none Wenn eine Animationsverzögerung eingestellt ist - dann wird das Element während der Verzögerungszeit an seiner Position bleiben und dann sprunghaft zum 0% Frame wechseln. Nach dem Ende der Animation bleibt das Element nicht in dem Zustand, in dem es angehalten hat, sondern springt in den Ausgangszustand zurück.
backwards Bewirkt, dass sich das Element nach dem Laden der Seite zum 0% Frame bewegt, auch wenn eine Verzögerung animation-delay eingestellt ist, und dort bleibt, bis die Animation beginnt. Nach dem Ende der Animation bleibt das Element nicht in dem Zustand, in dem es angehalten hat, sondern springt in den Ausgangszustand zurück.
forwards Weist den Browser an, dass das Element nach dem Ende der Animation in dem Zustand bleibt, in dem es angehalten hat.
both Beinhaltet backwards und forwards - nach dem Laden der Seite wird das Element auf den 0% Frame gesetzt, und nach dem Ende der Animation bleibt das Element dort, wo es angehalten hat.

Standardwert: none.

Beispiel . Wert none

In diesem Beispiel ist margin-left auf den Wert 300px für das Element gesetzt, und für den ersten Frame der Animation - auf 0px. Da es keine Verzögerung animation-delay gibt, wird das Element nach dem Laden der Seite auf 0px gesetzt, und nicht auf 300px. Außerdem wird die Animation nach dem Ende zum Anfangswert zurückspringen:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: none; animation-delay: 0s; animation-duration: 3s; animation-name: move; animation-iteration-count: infinite; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Beispiel . Wert none

In diesem Beispiel ist margin-left auf den Wert 300px für das Element gesetzt, und für den ersten Frame der Animation - auf 0px. Außerdem ist für das Element eine Verzögerung animation-delay von 3 Sekunden eingestellt, daher wird das Element nach dem Laden der Seite auf 300px gesetzt, und nicht auf 0px, und wird dort 3 Sekunden stehen, nachdem die Animation beginnt, und dann sprunghaft zu 0px wechseln - und die Animation beginnt von dort. Außerdem wird die Animation nach dem Ende zum Anfangswert zurückspringen:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: none; animation-delay: 0s; animation-duration: 3s; animation-name: move; animation-iteration-count: infinite; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Beispiel . Wert backwards

In diesem Beispiel ist margin-left auf den Wert 300px für das Element gesetzt, und für den ersten Frame der Animation - auf 0px. Außerdem ist für das Element animation-fill-mode auf den Wert backwards gesetzt, daher wird das Element nach dem Laden der Seite auf 0px gesetzt, und nicht auf 300px, wie es bei animation-fill-mode mit dem Wert none der Fall war. Außerdem wird die Animation nach dem Ende zum Anfangswert zurückspringen:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: backwards; animation-delay: 0s; animation-duration: 3s; animation-name: move; animation-iteration-count: infinite; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Beispiel . Wert none und Anzahl der Wiederholungen gleich 1

In diesem Beispiel ist margin-left auf den Wert 300px für das Element gesetzt, und für den ersten Frame der Animation - auf 0px. Außerdem ist für das Element eine Verzögerung animation-delay von 3 Sekunden eingestellt, daher wird das Element nach dem Laden der Seite auf 300px gesetzt, und nicht auf 0px, und wird dort 3 Sekunden stehen, nachdem die Animation beginnt, und dann sprunghaft zu 0px wechseln - und die Animation beginnt von dort. Da animation-fill-mode auf dem Wert none eingestellt ist, kehrt das Element nach dem Abspielen der Animation zum Anfangswert zurück:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: none; animation-delay: 3s; animation-duration: 3s; animation-name: move; animation-iteration-count: 1; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Beispiel . Wert forwards und Anzahl der Wiederholungen gleich 1

In diesem Beispiel ist animation-fill-mode auf den Wert forwards gesetzt, und die Anzahl der Animationswiederholungen - auf 1. Nach dem Abspielen der Animation bleibt das Element in der Position, in der die Animation endete, und springt nicht zum Ausgangspunkt zurück.

Außerdem ist margin-left auf den Wert 300px für das Element gesetzt, und für den ersten Frame der Animation - auf 0px. Außerdem ist für das Element eine Verzögerung animation-delay von 3 Sekunden eingestellt, daher wird das Element nach dem Laden der Seite auf 300px gesetzt, und nicht auf 0px, und wird dort 3 Sekunden stehen, nachdem die Animation beginnt, und dann sprunghaft zu 0px wechseln - und die Animation beginnt von dort:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: forwards; animation-delay: 3s; animation-duration: 3s; animation-name: move; animation-iteration-count: 1; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Beispiel . Wert both und Anzahl der Wiederholungen gleich 1

In diesem Beispiel ist animation-fill-mode auf den Wert both gesetzt, und die Anzahl der Animationswiederholungen - auf 1. Nach dem Laden der Seite wird das Element im ersten Frame der Animation stehen (bei 0px, und nicht bei 300px), und nach dem Abspielen der Animation bleibt das Element in der Position, in der die Animation endete, und springt nicht zum Ausgangspunkt zurück:

<div id="elem"></div> @keyframes move { from { margin-left: 0; } to { margin-left: 400px; } } #elem { margin-left: 300px; animation-fill-mode: both; animation-delay: 3s; animation-duration: 3s; animation-name: move; animation-iteration-count: 1; animation-timing-function: linear; border: 1px solid black; width: 50px; height: 50px; }

:

Siehe auch

  • die Eigenschaft animation-name,
    die einen Namen für die Animation festlegt
  • die Eigenschaft animation-duration,
    die die Dauer der Animation festlegt
  • die Eigenschaft animation-delay,
    die die Verzögerung vor der Ausführung der Animation festlegt
  • die Eigenschaft animation-timing-function,
    die die Geschwindigkeit der Animationsausführung festlegt
  • die Eigenschaft animation-iteration-count,
    die die Anzahl der Iterationen der Animation festlegt
  • die Eigenschaft animation-direction,
    die die Richtung der Animation festlegt
  • die Eigenschaft animation-play-state,
    die das Pausieren der Animation ermöglicht
  • die Eigenschaft animation,
    die eine Kurzschreibweise für Animationen darstellt
  • die Anweisung @keyframes,
    die die Keyframes der Animation festlegt
  • fließende Übergänge transition, die eine Animation beim Überfahren eines Elements darstellen
Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen