Treci la conținutul principal

Animații CSS

Ca să muți sau să restilizezi un element în timp nu ai nevoie de JavaScript, deoarece CSS poate anima singur elementele HTML.


Ce sunt animațiile CSS?

Printr-o animație, un element trece treptat de la un stil la altul, iar numărul proprietăților CSS implicate și numărul schimbărilor nu sunt limitate.

Mai întâi vin cadrele-cheie: ele descriu stilurile pe care trebuie să le aibă elementul în anumite momente, iar o animație CSS nu poate rula până când acestea nu există.


CSS animation-name și animation-duration

Două proprietăți pun o animație în mișcare. animation-name îi dă un nume, iar animation-duration stabilește cât durează o rulare. Dacă lași durata deoparte, nu se animă nimic, deoarece valoarea ei implicită este 0s (0 secunde).


Regula CSS @keyframes

Stilurile puse într-o regulă @keyframes marchează momentele prin care trece animația, iar elementul se schimbă treptat de la stilul curent spre fiecare stil nou.

Nimic din toate acestea nu are efect până când animația nu este legată de un element.

Exemplu

Aici un element <div> este legat de „myAnimation”. În 4 secunde, culoarea lui de fundal trece treptat de la roșu la galben. Cuvintele cheie from și to reprezintă 0% și 100%.

Prompt
Creați o animație CSS care schimbă treptat culoarea de fundal a unui div de 100x100px de la roșu la galben timp de 4 secunde, folosind @keyframes cu cuvintele cheie "from" și "to" împreună cu proprietățile animation-name și animation-duration.
Rezultat: pagină HTML completă

Cadre-cheie procentuale

Procentele pot înlocui from și to și permit oricâte schimbări de stil. În acest caz, culoarea de fundal se schimbă la 0%, 25%, 50% și 100%.

Prompt
Creați o animație CSS folosind @keyframes cu pași procentuali (0%, 25%, 50%, 100%) pentru a schimba culoarea de fundal a unui div de 100x100px prin roșu, galben, albastru și verde timp de 4 secunde.
Rezultat: pagină HTML completă

Culoare și poziție

Aici, cadrele-cheie de la 0%, 25%, 50%, 75% și 100% stabilesc atât o culoare de fundal, cât și o poziție, așa că elementul <div> se deplasează pe un traseu pătrat în timp ce culoarea i se schimbă.

Prompt
Creați o animație CSS folosind @keyframes cu pași procentuali (0%, 25%, 50%, 75%, 100%) care schimbă atât culoarea de fundal, cât și poziția unui div de 100x100px poziționat relativ, deplasându-l pe un traseu pătrat în timp ce parcurge roșu, galben, albastru, verde și din nou roșu timp de 4 secunde.
Rezultat: pagină HTML completă