Treci la conținutul principal

Proprietatea CSS animation-delay

Ca să faci o animație să aștepte înainte de a începe, dă-i proprietății animation-delay o valoare de timp.

Funcționează și o valoare negativă, iar efectul este invers: animația începe ca și cum acea parte din ea ar fi rulat deja.

Exemplu

Aici, animația așteaptă 2 secunde înainte de a începe să ruleze:

Prompt
Creați o pagină care afișează un div roșu de 100x100px ce folosește o animație CSS pentru a se deplasa de la stânga la dreapta. Setați animation-delay la 2 secunde, astfel încât animația să înceapă după o pauză de 2 secunde. Folosiți @keyframes pentru a muta div-ul de la left:0px la left:250px.
Rezultat: pagină HTML completă

Întârziere negativă

Redarea pornește de pe parcurs, ca și cum 2 secunde din ea ar fi trecut deja:

Prompt
Creați o pagină care afișează un div roșu de 100x100px ce folosește o animație CSS pentru a se deplasa de la stânga la dreapta. Setați animation-delay la -2s, astfel încât animația să înceapă ca și cum ar fi rulat deja de 2 secunde. Folosiți un animation-duration de 4 secunde și @keyframes pentru a muta de la left:0px la left:250px.
Rezultat: pagină HTML completă

Proprietatea CSS animation-iteration-count

De câte ori rulează o animație se controlează cu animation-iteration-count.

Exemplu

Aici, animația rulează de trei ori, apoi se oprește:

Prompt
Creați o pagină care afișează un div roșu de 100x100px ce folosește o animație CSS pentru a se deplasa de la stânga la dreapta. Setați animation-iteration-count la 3, astfel încât animația să ruleze de 3 ori. Folosiți @keyframes pentru a muta div-ul de la left:0px la left:250px cu o durată de 4 secunde.
Rezultat: pagină HTML completă

Iterație infinită

Valoarea infinite face animația să continue la nesfârșit:

Prompt
Creați o pagină care afișează un div roșu de 100x100px ce folosește o animație CSS pentru a se deplasa de la stânga la dreapta la infinit. Setați animation-iteration-count la infinite. Folosiți @keyframes pentru a muta div-ul de la left:0px la left:250px cu o durată de 4 secunde.
Rezultat: pagină HTML completă

Proprietatea CSS animation-timing-function

Curba de viteză a unei animații vine de la animation-timing-function, care acceptă aceste valori:

  • ease - valoarea implicită: început lent, apoi rapid, apoi final lent
  • linear - rulează cu aceeași viteză constantă de la început până la sfârșit
  • ease-in - începe lent
  • ease-out - se termină lent
  • ease-in-out - începe și se termină lent
  • cubic-bezier(n,n,n,n) - propriile tale valori, date într-o funcție cubic-bezier

Exemplu

Mai jos apar câteva dintre curbele de viteză disponibile:

Prompt
Creați o pagină cu cinci div-uri roșii de 100x100px așezate vertical, fiecare afișând o valoare diferită pentru animation-timing-function: linear, ease, ease-in, ease-out și ease-in-out. Toate div-urile se animă de la left:0px la left:250px cu o durată de 4 secunde și un număr infinit de iterații. Etichetați fiecare div cu numele funcției sale de temporizare.
Rezultat: pagină HTML completă