Właściwość CSSAnimacje

animation-fill-mode

Decyduje, jak element wygląda przed rozpoczęciem i po zakończeniu animacji.

Wartość domyślna
none
Dziedziczona
Nie
Animowalna
nie
Dotyczy
wszystkie elementy oraz pseudoelementy ::before i ::after
JavaScript
element.style.animationFillMode = "forwards"
Na tej stronie

Przykład

#
CSS
.card {
  animation: fade-up 0.6s ease-out 0.3s both;
}

@keyframes fade-up {
  from { opacity: 0; transform: translateY(12px); }
}
Podgląd

Definicja i zastosowanie

#

Domyślnie animacja wpływa na element tylko w czasie trwania. Przed startem (w czasie opóźnienia) i po zakończeniu element wraca do swoich zwykłych stylów. Właściwość animation-fill-mode pozwala to zmienić.

forwards zatrzymuje element w stanie ostatniej klatki, backwards stosuje pierwszą klatkę już w czasie opóźnienia, a both łączy oba zachowania.

Przy efektach wejścia z opóźnieniem both to zwykle najlepszy wybór: element nie mignie przed startem i nie wróci do stanu początkowego po zakończeniu.

Składnia

#
Składnia
animation-fill-mode: none | forwards | backwards | both;

Wartości

#
  • none

    Przed startem i po końcu element stoi w swoim zwykłym miejscu.
  • forwards

    Po zakończeniu element zostaje w stanie ostatniej klatki.
  • backwards

    W czasie opóźnienia element już stoi w stanie pierwszej klatki.
  • both

    Pierwsza klatka przed startem i ostatnia po końcu.

Wartości w praktyce

#

none

Przed startem i po końcu element stoi w swoim zwykłym miejscu.
.demo { animation-fill-mode: none; }

forwards

Po zakończeniu element zostaje w stanie ostatniej klatki.
.demo { animation-fill-mode: forwards; }

backwards

W czasie opóźnienia element już stoi w stanie pierwszej klatki.
.demo { animation-fill-mode: backwards; }

both

Pierwsza klatka przed startem i ostatnia po końcu.
.demo { animation-fill-mode: both; }

Obsługa przeglądarek

#

Szeroko dostępne

Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.

  • Chrome
  • Edge
  • Firefox
  • Safari

Dobre praktyki

#
  • Efekty wejścia z opóźnieniem ustawiaj z both, inaczej element mignie w stanie końcowym przed startem.
  • Zamiast forwards na stałe rozważ ustawienie docelowych stylów w zwykłej regule. Łatwiej je potem nadpisać.

Powiązane hasła

#

Widzisz błąd albo brakuje przykładu? Napisz do nas.