Css animation keyframes: ИспользованиС CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ — CSS | MDN

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ИспользованиС CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ — CSS | MDN

Experimental

Π­Ρ‚ΠΎ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ тСхнология
Π’Π°ΠΊ ΠΊΠ°ΠΊ спСцификация этой Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ ΡΡ‚Π°Π±ΠΈΠ»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ, смотритС Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ совмСстимости ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ использования Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…. Π’Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ синтаксис ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… вСрсиях Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ², вслСд Π·Π° измСнСниями спСцификации.

CSS Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈΒ CSS стилСй ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ. CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ состоят ΠΈΠ· Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²: стилСвоС описаниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ Π½Π°Π±ΠΎΡ€ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ состояниС Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… стилСй.

Π•ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ прСимущСства CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ способами:

  1. ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° использования для простых Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ зная JavaScript.
  2. Анимации Π±ΡƒΠ΄ΡƒΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΡƒΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Ρ… Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ°Ρ… систСмы. ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° JavaScript, Ссли ΠΎΠ½ΠΈ ΠΏΠ»ΠΎΡ…ΠΎ написаны, часто Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΠ»ΠΎΡ…ΠΎ. Π”Π²ΠΈΠΆΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ frame-skipping ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ,Β Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π½Π° Ρ‚Π°ΠΊΠΎΠΌ высоком ΡƒΡ€ΠΎΠ²Π½Π΅ .
  3. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π΅ΠΌ самым оптимизируя ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. НапримСр, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ частоту обновлСния ΠΊΠ°Π΄Ρ€ΠΎΠ² Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² нСпросматриваСмых Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ….

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΡΡ‚ΠΈΠ»ΡŒ элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, свойство animation ΠΈΠ»ΠΈ Π΅Π³ΠΎ подсвойства.Β Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ускорСниС ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ анимация Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°Ρ‚ΡŒ. Π­Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ внСшний Π²ΠΈΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ настраиваСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ @keyframes (en-US), рассматриваСмой Π΄Π°Π»Π΅Π΅ Π² ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ².

Бвойство animation ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ подсвойства:

animation-name
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ имя @keyframes (en-US), Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ°Π΄Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
animation-duration
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ врСмя, Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΠΎΠ΄ΠΈΠ½ Ρ†ΠΈΠΊΠ» Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
animation-timing-function
НастраиваСт ускорСниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
animation-delay
НастраиваСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ элСмСнта ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
animation-iteration-count
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ количСство ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉΒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ infinite для бСсконСчного повторСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
animation-direction
Π”Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ΄Ρ‚ΠΈ ΠΏΠΎ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌΡƒ ΠΏΡƒΡ‚ΠΈ, Π»ΠΈΠ±ΠΎ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ всС значСния ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.
animation-fill-mode
НастраиваСт значСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π΄ΠΎ ΠΈ послС исполнСния.
animation-play-state
ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ настроили Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ свойства (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ускорСниС) Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ внСшний Π²ΠΈΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ дСлаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π²ΡƒΡ… ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² послС @keyframes (en-US). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€ описываСт, ΠΊΠ°ΠΊΒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ элСмСнт Π² Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚.

Π’ Ρ‚ΠΎ врСмя, ΠΊΠ°ΠΊ врСмСнныС характСристики (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ) ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² стилях для Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта, ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ percentage, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΡΡ‚Π°Π΄ΠΈΡŽ протСкания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. 0% ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π°Ρ‡Π°Π»ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° 100% Π΅Ρ‘ ΠΊΠΎΠ½Π΅Ρ†. Π’Π°ΠΊ ΠΊΠ°ΠΊ эти значСния ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹, Ρ‚ΠΎ для Π½ΠΈΡ… ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ слова: from ΠΈ to.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅Β ΠΊΠ°Π΄Ρ€Ρ‹, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ состояниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΈΠΆΠ΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ прСфиксов для CSS стилСй . Webkit-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΈ старыС вСрсии Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ прСфиксов Π² CSS стилях.Β ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΊΠ»ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² своём Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Ρ‚Π°ΠΊΠΆΠ΅ содСрТат прСфиксы -webkit-.

БкольТСниС тСкста

Π­Ρ‚ΠΎΡ‚ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅Ρ‚ скольТСниС тСкста Π² элСмСнтС <p> ΠΎΡ‚ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ анимация ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ страницу ΡˆΠΈΡ€Π΅, Ρ‡Π΅ΠΌ ΠΎΠΊΠ½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Π­Ρ‚ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, помСстив элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ установив Π΅ΠΌΡƒ свойство overflow: hidden.

p {
  animation-duration: 3s;
  animation-name: slidein;
}

@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%;
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}

Π’ стилС для элСмСнта <p> с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства animation-duration ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ исполнСниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΡΡ‚ΡŒ 3 с , ΠΈ Ρ‡Ρ‚ΠΎ имя для  @keyframes (en-US), ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅ΠΉ саму Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ «slidein».

Π’ элСмСнт <p> ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ стили, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΡƒΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ здСсь ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ эффСкт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅Β ΠΊΠ°Π΄Ρ€Ρ‹Β ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes (en-US). Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈ 0% Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (from). Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΏΡ€ΠΈΠ΄Π°Ρ‘ΠΌ элСмСнту Π»Π΅Π²Ρ‹ΠΉ отступ Π² 100% ΠΈ ΡˆΠΈΡ€ΠΈΠ½Ρƒ Π² 300% (Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° большС ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ элСмСнта). Π­Ρ‚ΠΎ становится ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊΒ <p> находится Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° .

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€Β (to) опрСдСляСт ΠΊΠΎΠ½Π΅Ρ† Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚.Π΅ (100%). Π›Π΅Π²Ρ‹ΠΉ отступ устанавливаСтся Ρ€Π°Π²Π½Ρ‹ΠΌ 0, Π° ΡˆΠΈΡ€ΠΈΠ½Π° 100%. ВсС выглядит Ρ‚Π°ΠΊ, Π±ΡƒΠ΄Ρ‚ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ <p> ΠΏΡ€ΠΈΠΏΠ»Ρ‹Π²Π°Π΅Ρ‚ ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

<p>The Caterpillar and Alice looked at each other for some time in silence:
at last the Caterpillar took the hookah out of its mouth, and addressed
her in a languid, sleepy voice.</p>

(ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΠ»ΠΈ Ρ‰Ρ‘Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ CodePen, Ρ‡Ρ‚ΠΎΠ±Ρ‹ воспроизвСсти Π΅Ρ‘ Π² ΠΎΠΊΠ½Π΅ CodePen)

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π‘ΠΊΠ°ΠΆΠ΅ΠΌ, ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ увСличивался ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ продвиТСния Π²Π»Π΅Π²ΠΎ, Π° ΠΏΠΎΡ‚ΠΎΠΌ возвращался ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ . Π­Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°:

75% {
  font-size: 300%;
  margin-left: 25%;
  width: 150%;
}
p {
  animation-duration: 3s;
  animation-name: slidein;
}

@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%;
  }

  to {
    margin-left: 0%;
    width: 100%;
  }

  75% {
    font-size: 300%;
    margin-left: 25%;
    width: 150%;
  }
}
<p>The Caterpillar and Alice looked at each other for some time in silence:
at last the Caterpillar took the hookah out of its mouth, and addressed
her in a languid, sleepy voice.</p>

Π­Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ 75% выполнСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΡˆΡ€ΠΈΡ„Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ 300%, Π° ΡˆΠΈΡ€ΠΈΠ½Π° 150%.

(ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΠ»ΠΈ Ρ‰Ρ‘Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ CodePen, Ρ‡Ρ‚ΠΎΠ±Ρ‹ воспроизвСсти Π΅Ρ‘ Π² ΠΎΠΊΠ½Π΅ CodePen)

Настройка повторСния

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ свойство animation-iteration-count ΠΈ Π·Π°Π΄Π°Ρ‚ΡŒ Π΅ΠΌΡƒΒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ€Π°Π²Π½ΠΎΠ΅ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ количСству ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ . Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Π΄Π°Π²Π°ΠΉΡ‚Π΅ установим Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Β infinite для бСсконСчного повторСния:

p {
  animation-duration: 3s;
  animation-name: slidein;
  animation-iteration-count: infinite;
}
@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%;
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}
<p>The Caterpillar and Alice looked at each other for some time in silence:
at last the Caterpillar took the hookah out of its mouth, and addressed
her in a languid, sleepy voice.</p>

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ тСкста Π²ΠΏΡ€Π°Π²ΠΎ ΠΈ Π²Π»Π΅Π²ΠΎ

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ настроили ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π½Π΅Ρ‡Ρ‚ΠΎ странноС: тСкст ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΈ снова «Π·Π°ΠΏΡ€Ρ‹Π³ΠΈΠ²Π°Π΅Ρ‚» Π·Π° ΠΊΡ€Π°ΠΉ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Π’ΠΎ, Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‚Π°ΠΊ это Ρ‡Ρ‚ΠΎΠ±Ρ‹ тСкст двигался Π²Π»Π΅Π²ΠΎ ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ. Π­Ρ‚ΠΎΠ³ΠΎ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ установки свойству animation-direction значСния alternate:

p {
  animation-duration: 3s;
  animation-name: slidein;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%;
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}
<p>The Caterpillar and Alice looked at each other for some time in silence:
at last the Caterpillar took the hookah out of its mouth, and addressed
her in a languid, sleepy voice. </p>

ИспользованиС ΡˆΠΎΡ€Ρ‚ΠΊΠΎΠ΄ΠΎΠ²

Π¨ΠΎΡ€Ρ‚ΠΊΠΎΠ΄ animation ΠΏΠΎΠ»Π΅Π·Π΅Π½ для экономии мСста Π² ΠΊΠΎΠ΄Π΅. НапримСр, ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅:

pΒ {
Β  animation-duration:Β 3s;
Β Β animation-name:Β slidein;
Β  animation-iteration-count:Β infinite;
Β Β animation-direction: alternate;
}

ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°:

pΒ {
Β  animation:Β 3s infinite alternate slidein;
}

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом Π½Π° страницС Ρ€Π°Π·Π΄Π΅Π»Π° animationΒ 

Установка Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойствам Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈΒ Β 

CSS свойство Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈΒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… запятыми.Β Π­Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ,Β Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π΅Β ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, число ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉΒ ΠΈ Ρ‚.Π΄., для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ. Рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅Β Ρƒ свойства ΠΈΠΌΠ΅Π½ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ установлСны Ρ‚Ρ€ΠΈ значСния, Ρƒ свойств ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ количСства ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉΒ  β€”Β ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ. Π’ этом случаС Ρƒ всСх Ρ‚Ρ€Ρ‘Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ одинаковая ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ число ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ:

animation-name:Β fadeInOut, moveLeft300px, bounce;
animation-duration:Β 3s;
animation-iteration-count:Β 1;

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ установлСны Ρ‚Ρ€ΠΈ значСния для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· свойств. Π’ этом случаС каТдая анимация выполняСтся с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠΎ порядку значСниями Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ свойствС, Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,Β fadeInOutΒ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 2.5 с ΠΈ количСство ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ 2, ΠΈ Ρ‚.Π΄.

animation-name:Β fadeInOut, moveLeft300px, bounce;
animation-duration:Β 2.5s,Β 5s,Β 1s;
animation-iteration-count:Β 2,Β 1,Β 5;

Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ значСния ΠΈΠΌΠ΅Π½ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Π΄Π²Π° значСния ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ количСства ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ. Π’ случаС, ΠΊΠΎΠ³Π΄Π° количСства Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ нСдостаточно для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, значСния бСрутся цикличСски ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°. НапримСр, ΡƒΒ fadeInOutΒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ 2.5s,Β  Π° moveLeft300pxΒ β€”Β 5s. ЗначСния ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈΡΡŒ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ΠΈ бСрутся сначала β€” bounce ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 2. 5s. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ количСства ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ (Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ свойства) Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

animation-name:Β fadeInOut, moveLeft300px, bounce;
animation-duration:Β 2.5s,Β 5s;
animation-iteration-count:Β 2,Β 1;

ИспользованиС событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π½Π΅ΠΉ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΈ события, прСдставлСнныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ AnimationEvent (en-US), ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° начинаСтся ΠΈ заканчиваСтся анимация ΠΈΠ»ΠΈ начинаСтся новая итСрация. КаТдоС событиС содСрТит момСнт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, которая Π²Ρ‹Π·Π²Π°Π»Π° событиС.

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкст,Β Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽΒ  ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ событии Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π’Π°ΠΊ ΠΌΡ‹ смоТСм ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ CSS

Начнём с добавлСния CSS. Анимация Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ 3 сСкунды, Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ «slidein», Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ 3 Ρ€Π°Π·Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ animation-direction установлСно alternate. Π’ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°Ρ… @keyframes (en-US) установлСны Ρ‚Π°ΠΊΠΈΠ΅ значСния ΡˆΠΈΡ€ΠΈΠ½Ρ‹ ΠΈ Π»Π΅Π²ΠΎΠ³ΠΎ отступа, Ρ‡Ρ‚ΠΎ элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΊΠΎΠ»ΡŒΠ·ΠΈΡ‚ΡŒ ΠΏΠΎ экрану.

.slidein {
  -moz-animation-duration: 3s;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -moz-animation-name: slidein;
  -webkit-animation-name: slidein;
  animation-name: slidein;
  -moz-animation-iteration-count: 3;
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
  -moz-animation-direction: alternate;
  -webkit-animation-direction: alternate;
  animation-direction: alternate;
}

@-moz-keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}

@-webkit-keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%
  }

  to {
   margin-left: 0%;
   width: 100%;
 }
}

@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%
  }

  to {
   margin-left: 0%;
   width: 100%;
 }
}
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° события Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π‘ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ JavaScript для отслСТивания всСх Ρ‚Ρ€Ρ‘Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ; ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

var e = document.getElementById("watchme");
e.addEventListener("animationstart", listener, false);
e.addEventListener("animationend", listener, false);
e.addEventListener("animationiteration", listener, false);

e.className = "slidein";

Π­Ρ‚ΠΎ довольно стандартный ΠΊΠΎΠ΄; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ element.addEventListener(). ПослСднСС, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ этот ΠΊΠΎΠ΄ — это установка класса «slidein» для Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта; ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ это, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² нашСм случаС событиС animationstart происходит ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ анимация стартуСт, ΠΈ это происходит Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ исполняСтся наш сцСнарий. Π’Π°ΠΊ ΠΌΡ‹ смоТСм ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ посрСдством вставки класса «slidein» для Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта.

РСгистрация событий

Бобытия Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ listener(), ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅.

function listener(e) {
  var l = document.createElement("li");
  switch(e.type) {
    case "animationstart":
      l.innerHTML = "Started: elapsed time is " + e.elapsedTime;
      break;
    case "animationend":
      l.innerHTML = "Ended: elapsed time is " + e.elapsedTime;
      break;
    case "animationiteration":
      l.innerHTML = "New loop started at time " + e.elapsedTime;
      break;
  }
  document.getElementById("output").appendChild(l);
}

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ прост. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ слСдит Π·Π° event.type, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ события, ΠΈ добавляСт элСмСнт <ul>, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π΅ событиС.

Π’Ρ‹Π²ΠΎΠ΄, ΠΊΠΎΠ³Π΄Π° анимация закончится, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎΒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Started: elapsed time is 0
  • New loop started at time 3.01200008392334
  • New loop started at time 6.00600004196167
  • Ended: elapsed time is 9.234000205993652

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ врСмя, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² Π²Ρ‹Π²ΠΎΠ΄Π΅, ΠΈ врСмя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ Π² стилях, Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚. Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ послС окончания ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π΅ посылаСтся событиС animationiteration ; вмСсто Π½Π΅Π³ΠΎ посылаСтся событиС animationend.

HTML

Π Π°Π΄ΠΈ ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘ΠΌ ΠΊΠΎΠ΄ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ HTML. Π’ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ имССтся Ρ‚Π΅Π³ ul, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ выводится вся информация:

<body>
  <h2>Watch me move</h2>
  <p>This example shows how to use CSS animations to make <code>p</code> elements
  move across the page.</p>
  <p>In addition, we output some text each time an animation event fires, so you can see them in action.</p>
  <ul>
  </ul>
</body>

Анимация Animations CSS ΡƒΡ€ΠΎΠΊΠΈ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… акадСмия


Анимация CSS

CSS анимация позволяСт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° HTML элСмСнтов Π±Π΅Π· использования JavaScript ΠΈΠ»ΠΈ Flash!

CSS


ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ

НомСра Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, которая ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ свойство.

НомСра -WebKit-, -ΠœΠžΠ—-, ΠΈΠ»ΠΈ -o- ΡƒΠΊΠ°ΠΆΠ°Ρ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° с прСфиксом.

Бвойство
@keyframes43.0
4.0Β -webkit-
10.016.0
5.0Β -moz-
9.0
4.0Β -webkit-
30.0
15.0Β -webkit-
12.0 -o-
animation43.0
4.0Β -webkit-
10.016.0
5.0Β -moz-
9.0
4.0Β -webkit-
30.0
15.0Β -webkit-
12.0Β -o-

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ анимация CSS?

Анимация позволяСт элСмСнту постСпСнно ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ стиля ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ любоС количСство свойств CSS, сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ Ρ€Π°Π·.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ ΠΊΠ°ΠΊΠΈΠ΅ стили элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя.


ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes

ΠŸΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ стилСй CSS Π²Π½ΡƒΡ‚Ρ€ΠΈ @keyframes
ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, анимация Π±ΡƒΠ΄Π΅Ρ‚ постСпСнно ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ стиля ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ ΡΡ‚ΠΈΠ»ΡŽ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ для Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΊ элСмСнту.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация «example» привязываСтся ΠΊ элСмСнту <div>.
Анимация Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ 4 сСкунды, ΠΈ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ постСпСнно ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° элСмСнта <div> ΠΎΡ‚ «Red» Π½Π° «ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/* The animation code */
@keyframes example {
Β Β Β 
from {background-color: red;}
Β Β Β 
to {background-color: yellow;}
}

/* The element to apply the animation to */
div {
Β Β Β  width: 100px;
Β Β Β  height: 100px;
Β Β Β 
background-color: red;
Β Β Β 
animation-name: example;
Β Β Β  animation-duration: 4s;
}

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Бвойство animation-duration опрСдСляСт, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΡΡ‚ΡŒ анимация для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ. Если свойство animation-duration Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ, анимация Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ 0 сСкундам.

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΡ‚ΠΈΠ»ΡŒ измСнится с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов «from» ΠΈ «to» (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдставляСт 0% (Start) ΠΈ 100% (ΠΏΠΎΠ»Π½Ρ‹ΠΉ)).

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ любоС количСство ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ стиля.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ измСняСтся Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° элСмСнта < div > ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° 25%, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ 50% ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° 100%:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/* The animation code */
@keyframes example
{
Β Β Β 
0%Β Β  {background-color: red;}
Β Β Β 
25%Β  {background-color: yellow;}
Β Β Β 
50%Β  {background-color: blue;}
Β Β Β 
100% {background-color: green;}
}

/* The element to apply the animation to */
div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
background-color: red;
Β Β Β  animation-name: example;
Β Β Β 
animation-duration: 4s;
}

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ измСняСтся ΠΊΠ°ΠΊ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°, Ρ‚Π°ΠΊ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ элСмСнта <div> ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° 25%, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ 50% ΠΈ снова ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 100%:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/* The animation code */
@keyframes example
{
Β Β Β 
0%Β Β  {background-color:red; left:0px; top:0px;}
Β Β Β 
25%Β  {background-color:yellow; left:200px; top:0px;}
Β Β Β 
50%Β  {background-color:blue; left:200px; top:200px;}
Β Β Β 
75%Β  {background-color:green; left:0px; top:200px;}
Β Β Β 
100% {background-color:red; left:0px; top:0px;}
}

/* The element to apply the animation to */
div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
}



Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Бвойство animation-delay ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² 2 сСкунды ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-delay: 2s;
}

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹. ΠŸΡ€ΠΈ использовании ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ анимация запускаСтся, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½Π° ΡƒΠΆΠ΅ воспроизводится Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ N сСкунд.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация начнСтся, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½Π° ΡƒΠΆΠ΅ ΠΈΠ³Ρ€Π°Π»Π° Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 2 сСкунд:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-delay: -2s;
}


Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, сколько Ρ€Π°Π· анимация Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ

Бвойство animation-iteration-count ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько Ρ€Π°Π· Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ анимация.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ 3 Ρ€Π°Π·Π°, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ½Π° остановится:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-iteration-count: 3;
}

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «Infinite» для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π»Π°ΡΡŒ навсСгда:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-iteration-count:
infinite;
}


Запуск Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹

Бвойство animation-direction ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, слСдуСт Π»ΠΈ воспроизвСсти Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄ ΠΈΠ»ΠΈ Π² Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»Π°Ρ….

Бвойство «Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • normal — Анимация воспроизводится ΠΊΠ°ΠΊ обычная (Π²ΠΏΠ΅Ρ€Π΅Π΄). Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • reverse — Анимация воспроизводится Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ (Π½Π°Π·Π°Π΄)
  • alternate — Анимация сначала разыгрываСтся Π²ΠΏΠ΅Ρ€Π΅Π΄, Π·Π°Ρ‚Π΅ΠΌ Π½Π°Π·Π°Π΄
  • alternate-reverse — Анимация сначала воспроизводится Π½Π°Π·Π°Π΄, Π° Π·Π°Ρ‚Π΅ΠΌ пСрСсылаСтся

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ (Π½Π°Π·Π°Π΄):

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-direction:
reverse;
}

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ сначала Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Π΅Π΄, Π° Π·Π°Ρ‚Π΅ΠΌ Π½Π°Π·Π°Π΄:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-iteration-count: 2;
Β Β Β  animation-direction:
alternate;
}

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ-ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ» для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация сначала ΠΏΡ€ΠΎΠ±Π΅ΠΆΠ°Π»Π° Π½Π°Π·Π°Π΄, Π° Π·Π°Ρ‚Π΅ΠΌ пСрСсылаСт:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β 
width: 100px;
Β Β Β  height: 100px;
Β Β Β 
position: relative;
Β Β Β  background-color: red;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 4s;
Β Β Β  animation-iteration-count: 2;
Β Β Β  animation-direction:
alternate-reverse;
}


Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΡ€ΠΈΠ²ΡƒΡŽ скорости Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Бвойство animation-timing-function опрСдСляСт ΠΊΡ€ΠΈΠ²ΡƒΡŽ скорости Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Бвойство «Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡ-врСмя-функция» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • ease — Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ запуском, Π° Π·Π°Ρ‚Π΅ΠΌ быстро, Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ (это ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)
  • linear — Π—Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
  • ease-in — Π—Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ запуском
  • ease-out — Π—Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ†ΠΎΠΌ
  • ease-in-out — Π—Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π°Ρ‡Π°Π»ΠΎΠΌ ΠΈ ΠΊΠΎΠ½Ρ†ΠΎΠΌ
  • cubic-bezier(n,n,n,n) — ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ собствСнныС значСния Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ кубичСской Π‘Π΅Π·ΡŒΠ΅

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΡ€ΠΈΠ²Ρ‹Ρ… скорости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

#div1 {animation-timing-function: linear;}
#div2
{animation-timing-function: ease;}
#div3 {animation-timing-function:
ease-in;}
#div4 {animation-timing-function: ease-out;}
#div5
{animation-timing-function: ease-in-out;}


Π—Π°Π΄Π°Π½ΠΈΠ΅ Ρ€Π΅ΠΆΠΈΠΌΠ° Π·Π°Π»ΠΈΠ²ΠΊΠΈ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Анимация CSS Π½Π΅ влияСт Π½Π° элСмСнт Π΄ΠΎ воспроизвСдСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° ΠΈΠ»ΠΈ послС воспроизвСдСния послСднСго ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°. Бвойство «Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡ-Ρ€Π΅ΠΆΠΈΠΌ заполнСния» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ это ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.

Бвойство animation-fill-mode Π·Π°Π΄Π°Π΅Ρ‚ ΡΡ‚ΠΈΠ»ΡŒ для Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ элСмСнта, Ссли анимация Π½Π΅ воспроизводится (Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π°, послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ).

Бвойство «Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡ-Ρ€Π΅ΠΆΠΈΠΌ заполнСния» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • none — Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Анимация Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ стили ΠΊ элСмСнту Π΄ΠΎ ΠΈΠ»ΠΈ послС выполнСния
  • forwards — Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ сохранит значСния стиля, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ послСдним ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ (зависит ΠΎΡ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ-направлСния ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ-количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ)
  • backwards — Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ значСния стиля, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ (Π² зависимости ΠΎΡ‚ направлСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ), ΠΈ сохранит это Π²ΠΎ врСмя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ-ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ
  • both — Анимация Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ ΠΊΠ°ΠΊ Π²ΠΏΠ΅Ρ€Π΅Π΄, Ρ‚Π°ΠΊ ΠΈ Π½Π°Π·Π°Π΄, Ρ€Π°ΡΡˆΠΈΡ€ΡΡ свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт элСмСнту <div> ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ значСния стиля ΠΈΠ· послСднСго ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β  width: 100px;
Β Β Β  height: 100px;
Β Β Β 
background: red;
Β Β Β  position: relative;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 3s;
Β Β Β  animation-fill-mode: forwards;
}

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт элСмСнту <div> ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния стиля, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (Π²ΠΎ врСмя ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ):

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β  width: 100px;
Β Β Β  height: 100px;
Β Β Β 
background: red;
Β Β Β  position: relative;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 3s;
Β Β Β 
animation-delay: 2s;
Β Β Β  animation-fill-mode: backwards;
}

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт элСмСнту <div> ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ значСния стиля, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ значСния стилСй ΠΈΠ· послСднСго ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° ΠΏΡ€ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
Β Β Β  width: 100px;
Β Β Β  height: 100px;
Β Β Β 
background: red;
Β Β Β  position: relative;
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 3s;
Β Β Β 
animation-delay: 2s;
Β Β Β  animation-fill-mode: both;
}


Анимация Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ свойство

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡˆΠ΅ΡΡ‚ΡŒ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div
{
Β Β Β 
animation-name: example;
Β Β Β 
animation-duration: 5s;
Β Β Β 
animation-timing-function: linear;
Β Β Β 
animation-delay: 2s;
Β Β Β 
animation-iteration-count: infinite;
Β Β Β 
animation-direction: alternate;
}

Π’Π°ΠΊΠΎΠΉ ΠΆΠ΅ эффСкт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊ ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сокращСнного animation Бвойства:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div
{
Β Β Β  animation: example 5s linear 2s infinite alternate;
}


Бвойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ пСрСчислСны ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes ΠΈ всС свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS:

Π‘Π²ΠΎΠΉΡΡ‚Π²ΠΎΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
@keyframesΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
animationΠ‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ свойство для задания всСх свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
animation-delayΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
animation-directionΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, слСдуСт Π»ΠΈ воспроизвСсти Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄ ΠΈΠ»ΠΈ Π² Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»Π°Ρ…
animation-durationΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΡΡ‚ΡŒ анимация для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°
animation-fill-modeΠ—Π°Π΄Π°Π΅Ρ‚ ΡΡ‚ΠΈΠ»ΡŒ элСмСнта, Ссли анимация Π½Π΅ воспроизводится (Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π°, послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΈ Ρ‚ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅)
animation-iteration-countΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько Ρ€Π°Π· Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ анимация
animation-nameΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ @keyframes
animation-play-stateΠ£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π»ΠΈ анимация ΠΈΠ»ΠΈ приостановлСна
animation-timing-functionΠ—Π°Π΄Π°Π΅Ρ‚ ΠΊΡ€ΠΈΠ²ΡƒΡŽ скорости Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

CSS анимация (CSS animation & @keyframes) // «ЀрилансСр ΠΏΠΎ ΠΆΠΈΠ·Π½ΠΈΒ»

easeΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

ease-in

ease-out

ease-in-out

linear

steps(int,start|end)

cubic-bezier(x1,y1,x2,y2)

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ начинаСтся ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, разгоняСтся быстро ΠΈ замСдляСтся Π² ΠΊΠΎΠ½Ρ†Π΅. БоотвСтствуСт cubic-bezier(0.25,0.1,0.25,1).

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: ease;

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s ease;

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ начинаСтся ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ»Π°Π²Π½ΠΎ ускоряСтся Π² ΠΊΠΎΠ½Ρ†Π΅. БоотвСтствуСт cubic-bezier(0.42,0,1,1).

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: ease-in;

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s ease-in;

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ начинаСтся быстро ΠΈ ΠΏΠ»Π°Π²Π½ΠΎ замСдляСтся Π² ΠΊΠΎΠ½Ρ†Π΅. БоотвСтствуСт cubic-bezier(0,0,0.58,1).

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: ease-out;

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s ease-out;

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ начинаСтся ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ заканчиваСтся. БоотвСтствуСт cubic-bezier(0.42,0,0.58,1).

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: ease-in-out;

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s ease-in-out;

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ происходит Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Π½Π° протяТСнии всСго Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π±Π΅Π· ΠΊΠΎΠ»Π΅Π±Π°Π½ΠΈΠΉ Π² скорости. БоотвСтствуСт cubic-bezier(0,0,1,1).

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: linear;

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s linear;

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ВрСмСнная функция позволяСт Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π½Π° Ρ‡Ρ‘Ρ‚ΠΊΠΎΠ΅ количСство шагов ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π² int. Π’Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΌΠΎΠΌΠ΅Π½Ρ‚ выполнСния: Start – ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½ΡƒΠΆΠ½ΠΎ сразу ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. End — ΠΎΠ·Π½Π°Ρ‡Π°Π»ΠΎ Π±Ρ‹, Ρ‡Ρ‚ΠΎ измСнСния Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ Π² Π½Π°Ρ‡Π°Π»Π΅, Π° Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ шага.

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: steps(2,start);

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s steps(2,start);

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ значСния (ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅) для ΠΊΡ€ΠΈΠ²ΠΎΠΉ ускорСния ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ cubic BΓ©zier с сайта easings.net

НазваниСЗначСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
easeInSinecubic-bezier(0.47, 0, 0.745, 0.715)
easeOutSinecubic-bezier(0.39, 0.575, 0.565, 1)
easeInOutSinecubic-bezier(0.445, 0.05, 0.55, 0.95)
easeInQuadcubic-bezier(0.55, 0.085, 0.68, 0.53)
easeOutQuadcubic-bezier(0.25, 0.46, 0.45, 0.94)
easeInOutQuadcubic-bezier(0.455, 0.03, 0.515, 0.955)
easeInCubiccubic-bezier(0.55, 0.055, 0.675, 0.19)
easeOutCubiccubic-bezier(0.215, 0.61, 0.355, 1)
easeInOutCubiccubic-bezier(0.645, 0.045, 0.355, 1)
easeInQuartcubic-bezier(0.895, 0.03, 0.685, 0.22)
easeOutQuartcubic-bezier(0.165, 0.84, 0.44, 1)
easeInOutQuartcubic-bezier(0.77, 0, 0.175, 1)
easeInQuintcubic-bezier(0.755, 0.05, 0.855, 0.06)
easeOutQuintcubic-bezier(0.23, 1, 0.32, 1)
easeInOutQuintcubic-bezier(0.86, 0, 0.07, 1)
easeInExpocubic-bezier(0.95, 0.05, 0.795, 0.035)
easeOutExpocubic-bezier(0.19, 1, 0.22, 1)
easeInOutExpocubic-bezier(1, 0, 0, 1)
easeInCirccubic-bezier(0.6, 0.04, 0.98, 0.335)
easeOutCirccubic-bezier(0.075, 0.82, 0.165, 1)
easeInOutCirccubic-bezier(0.785, 0.135, 0.15, 0.86)
easeInBackcubic-bezier(0.6, -0.28, 0.735, 0.045)
easeOutBackcubic-bezier(0.175, 0.885, 0.32, 1.275)
easeInOutBackcubic-bezier(0.68, -0.55, 0.265, 1.55)

CSS ΠΊΠΎΠ΄:

/* сСлСктор */

.animation__circle{

width: 100px;
height: 100px;
border-radius: 50%;
background-color: #5e5373;
position: relative;
animation-name: circle;
animation-duration: 1s;
animation-timing-function: cubic-bezier(0.68,-0.55,0.265,1.55);

}

/* ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

@keyframes circle{

0%{
left: 0%;
}
50%{
border-radius: 0%;
}
100%{
left: 50%;
}

}

Или (ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ запись):

/* сСлСктор */

.animation__circle{

/* всС Ρ‚Π΅ ΠΆΠ΅ стили сСлСктора */
animation: circle 1s cubic-bezier(0.68,-0.55,0.265,1.55);

}

/* Ρ‚Π΅ ΠΆΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ */

animation-delay | htmlbook.ru

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
10.0+3.0+12.0+12.10+4.0+5.0+16.0+3.0+2.0+

ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ информация

ВСрсии CSS

ОписаниС

Бвойство animation-delay устанавливаСт врСмя оТидания ΠΏΠ΅Ρ€Π΅Π΄ воспроизвСдСниСм Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0s ΠΈΠ»ΠΈ 0ms, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ установлСно ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, запускаСт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ сразу ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° примСняСтся ΠΊ элСмСнту. ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π±Π΅Π· Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ, Π½ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ измСнСнию ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Допустимо ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, пСрСчисляя ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ. КаТдоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊ свойству, Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… animation-name.

Бинтаксис

animation-delay: <врСмя>[, <врСмя>]*

ЗначСния

Π‘ΠΌ. врСмя.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

HTML5CSS3IE 10+CrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>animation-delay</title>
  <style>
   @-webkit-keyframes flash {
    0%, 100% {opacity: 1;} 
    50% {opacity: 0;}
   }
   @-moz-keyframes flash {
    0%, 100% {opacity: 1;} 
    50% {opacity: 0;}
   }
   @-o-keyframes flash {
    0%, 100% {opacity: 1;} 
    50% {opacity: 0;}
   }
   @keyframes flash {
    0%, 100% {opacity: 1;} 
    50% {opacity: 0;}
   }
   .flash {
    -webkit-animation-name: flash;
    -moz-animation-name: flash;
    -o-animation-name: flash;
    animation-name: flash;
    /* Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ */
    -webkit-animation-delay: 1s;
    -moz-animation-delay: 1s;
    -o-animation-delay: 1s;
    animation-delay: 1s;
    /* ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ */
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -o-animation-duration: 1s;
    animation-duration: 1s;
   }
  </style>
 </head>
 <body>
  <h2>Π”ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ!</h2>
 </body>
</html>

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ модСль

[window.]document.getElementById(«elementID»).style.animationDelay

Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹

Chrome, Safari, Android ΠΈ iOS ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ нСстандартноС свойство -webkit-animation-delay.

Opera Π΄ΠΎ вСрсии 12.10 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСстандартноС свойство -o-animation-delay.

Firefox Π΄ΠΎ вСрсии 16.0 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ нСстандартноС свойство -moz-animaition-delay.

HTML ΠΈ CSS с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π°

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes управляСт ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ шагами Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS, опрСдСляя стили для ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π­Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ больший ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ этапами Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹.

@-ΠΏΡ€Π°Π²ΠΈΠ»Π°
ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΈ Анимации

Бинтаксис

@keyframes slidein {
  from {
    margin-left: 100%;
    width: 300%;
  }

  50% {
    margin-left: 50%;
    width: 200%;
  }

  to {
    margin-left: 0%;
    width: 100%;
  }
}

ЗначСния

JavaScript ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ @keyframes ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ интСрфСйса ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ CSS CSSKeyframesRule.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹, создайтС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes с ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Ρ‚Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойством animation-name. КаТдоС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes содСрТит список стилСй сСлСкторов ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹ вдоль Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° происходит ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€, ΠΈ Π±Π»ΠΎΠΊ, содСрТащий стили для этого ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° Π² любом порядкС; ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ порядкС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ.

Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ списки ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²

Если ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes Π½Π΅ опрСдСляСт Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ состояния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ 0%/from ΠΈ 100%/to, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ стили этого элСмСнта для состояний Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ элСмСнта ΠΈΠ· Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ.

Бвойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π² ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… @keyframes, ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ свойства всС Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ²

Если для Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ сущСствуСт нСсколько Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ послСдний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ встрСчаСтся парсСром. ΠŸΡ€Π°Π²ΠΈΠ»Π° @keyframes Π½Π΅ ΠΊΠ°ΡΠΊΠ°Π΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, поэтому Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ выводят ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π½Π°Π±ΠΎΡ€ΠΎΠ² ΠΏΡ€Π°Π²ΠΈΠ».

Если смСщСниС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ дублируСтся, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ послСдний ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ Π² ΠΏΡ€Π°Π²ΠΈΠ»Π΅ @keyframes для этого ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°. Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes Π½Π΅Ρ‚ каскадирования, Ссли нСсколько ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π½Ρ‹Π΅ значСния.

Когда свойства Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°Ρ…

Бвойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅, ΠΏΠΎ возмоТности ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ — свойства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ ΠΈΠ· Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. НапримСр:

@keyframes identifier {
  0% {
    top: 0;
    left: 0;
  }
  30% {
    top: 50px;
  }
  68%,
  72% {
    left: 50px;
  }
  100% {
    top: 100px;
    left: 100%;
  }
}

Π—Π΄Π΅ΡΡŒ свойство top Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ 0%, 30% ΠΈ 100% ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹, Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ для left ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 0%, 68% ΠΈ 100% ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹.

Когда ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ опрСдСляСтся нСсколько Ρ€Π°Π·

Если ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ нСсколько Ρ€Π°Π·, Π½ΠΎ Π½Π΅ всС Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Π΅ свойства находятся Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ значСния, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² послСднСм ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅. НапримСр:

@keyframes identifier {
  0% {
    top: 0;
  }
  50% {
    top: 30px;
    left: 20px;
  }
  50% {
    top: 10px;
  }
  100% {
    top: 0;
  }
}

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½Π° 50% ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ top: 10px, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ значСния Π² этом ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

ΠšΠ°ΡΠΊΠ°Π΄Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ начиная с Firefox 14. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² 50% ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ left: 20px. Π­Ρ‚ΠΎ Π΅Ρ‰Π΅ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Π² спСцификации, Π½ΠΎ это обсуТдаСтся.

!important Π² ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°Ρ…

ОбъявлСния Π² ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°Ρ… с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ !important ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ:

@keyframes important1 {
  from {
    margin-top: 50px;
  }
  50% {
    margin-top: 150px !important;
  } /* ignored */
  to {
    margin-top: 100px;
  }
}

@keyframes important2 {
  from {
    margin-top: 50px;
    margin-bottom: 100px;
  }
  to {
    margin-top: 150px !important; /* ignored */
    margin-bottom: 50px;
  }
}

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ

Can I Use css-animation? Data on support for the css-animation feature across the major browsers from caniuse.com.

CSS ΠΎΡ‚ А Π΄ΠΎ Π―: keyframe анимация

ΠžΡ‚ Π°Π²Ρ‚ΠΎΡ€Π°: ΠΏΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽ вас Π² нашСй сСрии ΡƒΡ€ΠΎΠΊΠΎΠ² CSS ΠΎΡ‚ А Π΄ΠΎ Π―! Π’ этой сСрии я расскаТу Π²Π°ΠΌ ΠΏΡ€ΠΎ CSS значСния ΠΈ свойства, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±ΡƒΠΊΠ² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°. Иногда ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€ΠΎΠ»ΠΈΠΊΠ° Π±Ρ‹Π²Π°Π΅Ρ‚ нСдостаточно, ΠΈ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Π΄Π°ΠΌ Π²Π°ΠΌ ΠΏΠ°Ρ€Ρƒ быстрых совСтов ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с keyframe Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.

K Π·Π½Π°Ρ‡ΠΈΡ‚ @keyframes

Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ способы ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π½Π΄ΠΎΡ€Π½Ρ‹Ρ… прСфиксов, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΡ‚Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ Π²Π°ΡˆΡƒ @keyframes Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π² Π±ΠΎΠ»Π΅Π΅ сТатый Ρ„ΠΎΡ€ΠΌΠ°Ρ‚.

Π’ этом Π²ΠΈΠ΄Π΅ΠΎ Π½Π° Π±ΡƒΠΊΠ²Ρƒ K ΠΌΡ‹ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ ΠΎ @keyframes Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ ΠΌΡ‹ Π΄Π°Π΄ΠΈΠΌ ΠΏΠ°Ρ€Ρƒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… совСтов ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с CSS Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ расскаТСм ΠΎ настоящих ΠΈΠ»ΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… свойствах.

Π‘ΠΎΠ²Π΅Ρ‚ 1

ΠŸΡ€ΠΈ создании @keyframes Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‡Π΅Π½ΡŒ часто Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… этапах Ρƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ значСния. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ€Π°ΡΡ‚ΡΠ³ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ список ΠΈΠ· ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ, ΠΌΠΎΠΆΠ½ΠΎ просто Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ… Ρ‡Π΅Ρ€Π΅Π· Π·Π°ΠΏΡΡ‚ΡƒΡŽ, ΠΊΠ°ΠΊ Π²Ρ‹ Π΄Π΅Π»Π°Π΅Ρ‚Π΅ с сСлСкторами с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ свойствами ΠΈ значСниями.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ курс ΠΏΠΎ вСрсткС Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ сайта с нуля!

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ курс ΠΈ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ Π²Π΅Ρ€ΡΡ‚Π°Ρ‚ΡŒ соврСмСнныС сайты Π½Π° HTML5 ΠΈ CSS3

Π£Π·Π½Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅

@keyframes pulse {
0%, 50% {font-size: 10px;}
25%, 100% {font-size: 20px;}
}

/* Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ */
h2, h3, h4 {
font-family: ‘Avenir’, sans-serif;
}

@keyframes pulse {

Β Β 0%, 50% {font-size: 10px;}

Β Β 25%, 100% {font-size: 20px;}

}

Β 

/* Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ */

h2, h3, h4 {

Β Β font-family: ‘Avenir’, sans-serif;

}

Π‘ΠΎΠ²Π΅Ρ‚ 2

CSS анимация ΠΈΠΌΠ΅Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…. На ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° составляла 89.5%, ΠΈ Π²ΠΎ всСх Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… @keyframes ΠΈ свойство animation Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π±Π΅Π· прСфиксов.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, для ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Safari 8 ΠΈ iOS 8.4 ΠΈ Π½ΠΈΠΆΠ΅ Π²Π°ΠΌ придСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСфикс –webkit, Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация Ρ€Π°Π±ΠΎΡ‚Π°Π»Π°. Как ΠΈ всС Ρ‚Π΅ ΠΊΡ€ΠΎΡˆΠ΅Ρ‡Π½Ρ‹Π΅ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ произвСсти Π²ΠΎ мноТСствС мСст, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ прСфикса Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ сильно Ρ€Π°Π·Π΄ΡƒΡ‚ΡŒ ΠΈ ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ ваш ΠΊΠΎΠ΄. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ чСловСчСским ошибкам.
Π•ΡΡ‚ΡŒ Π΄Π²Π° способа ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ чистым ΠΈ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ нСобходимости Ρ€ΡƒΡ‡Π½Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΎΠΊ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉ.

МоТно Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ бСзпрСфиксной JavaScript Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΎΡ‚ Π›ΠΈ Π’Π΅Ρ€ΠΎΡƒ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π° вас Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ всС прСфиксы. Π’Ρ‹ ΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π±Π΅Π· прСфиксов, Π° скрипт запускаСтся Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΈ вставляСт всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ прСфиксы Π·Π° вас. Π‘ΠΊΡ€ΠΈΠΏΡ‚ провСряСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ свойства, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° Π΄Π°Π½Π½ΠΎΠΉ страницС.

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΉΡ‚ΠΈ ΠΏΡƒΡ‚Π΅ΠΌ Autoprefixer. Π­Ρ‚ΠΎ постпроцСссор CSS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ послС написания ΠΊΠΎΠ΄Π° Π±Π΅Π· прСфиксов. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΈΠ΄Π΅Ρ‚ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π΅ с таск Ρ€Π°Π½Π½Π΅Ρ€Π°ΠΌΠΈ Ρ‚ΠΈΠΏΠ° Grunt ΠΈΠ»ΠΈ Gulp. Autoprefixer Π±Π΅Ρ€Π΅Ρ‚ всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ с сайта Caniuse ΠΈ опрСдСляСт Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ прСфиксы.

Π›ΠΈΡ‡Π½ΠΎ я ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽ Autoprefixer с таск Ρ€Π°Π½Π½Π΅Ρ€ΠΎΠΌ Gulp ΠΈ ΡƒΠΆΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ мСсяц Π½Π΅ ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽ Π²Π΅Π½Π΄ΠΎΡ€Π½Ρ‹Π΅ прСфиксы Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. ΠžΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ совСт ΠΏΠΎ ΡƒΡΠΊΠΎΡ€Π΅Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ процСсса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для всСх свойств, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для @keyframes!

Автор: Guy Routledge

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: //www.sitepoint.com/

РСдакция: Команда webformyself.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ курс ΠΏΠΎ вСрсткС Π°Π΄Π°ΠΏΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ сайта с нуля!

Π˜Π·ΡƒΡ‡ΠΈΡ‚Π΅ курс ΠΈ ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ Π²Π΅Ρ€ΡΡ‚Π°Ρ‚ΡŒ соврСмСнныС сайты Π½Π° HTML5 ΠΈ CSS3

Π£Π·Π½Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅

PSD to HTML

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° вСрстки сайта Π½Π° CSS Grid с нуля

Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ

Transitions vs Animations — CSS Animation

ΠŸΡ€ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² сСти, Ρ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΡˆΡŒΒ transition (ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹)Β ΠΈΠ»ΠΈΒ animation (Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ)? Π‘Ρ‹Π²Π°ΡŽΡ‚ случаи, ΠΊΠΎΠ³Π΄Π° Ρ‚Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅ΡˆΡŒ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ вмСсто Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. Π”Π°Π²Π°ΠΉ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ различиях.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Transitions?

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° элСмСнт ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ выполняСт Π² этом состоянии измСнСния с ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π² Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠ°Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ. Π•ΡΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ состояния ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора ΠΌΡ‹ΡˆΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° страницу добавляСм/удаляСм. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽΒ hover ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ΅Π»ΠΊΠΈΠ΅ измСнСния Π² Ρ†Π²Π΅Ρ‚Π΅ ΡˆΡ€ΠΈΡ„Ρ‚Π°, Π° информация Π½Π° страницС ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎ постСпСнно ΠΈΡΡ‡Π΅Π·Π°Ρ‚ΡŒ, Ρ‚ΠΎ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ этими двумя этапами, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½ΡŽΠ°Π½ΡΠ°Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ вмСстС с Ρ‚Π΅ΠΌ ΠΈΡ… ΠΏΡ€ΠΎΡ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ

Если Ρ‚Ρ‹ Ρ…ΠΎΡ‡Π΅ΡˆΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ элСмСнт ΠΏΠ»Π°Π²Π½ΠΎ с ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ transition. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ нСбольшиС измСнСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ transitions (ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ²) ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ для настройки способа самого ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°.

ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°Π²Π΅Ρ‚ ΠΌΡ‹ΡˆΠΊΡƒ/Π½Π°ΠΆΠΌΠ΅Ρ‚ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ:

Shiny effect

Или ΠΏΡ€ΠΈ добавлСнии элСмСнта Π½Π° страницу:

Add a list item

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅Β Animations?

Π’Β CSS Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹ΠΌΠΈ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π°ΠΌΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с transitions (ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°ΠΌΠΈ). ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния ΠΊ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌΡƒ,Β Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ этапами, Π½Π° ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сколько хочСтся, ΠΈ Π΄Π°Π΅Ρ‚ большС контроля Π½Π°Π΄ порядком измСнСния состояния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Если transition устанавливаСт ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Β Β Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ А Π΄ΠΎΒ B,Β Ρ‚ΠΎ animation ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ A, ΠΈ B, ΠΈ C ΠΈ Π΄Π°ΠΆΠ΅ D. Или любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ количСство этапов по ΠΌΠ΅Ρ€Π΅ нСобходимости.Β 

Animations добиваСтся этого с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°Π±ΠΎΡ€Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² (keyframes). Если ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΎΠ΄Π½ΠΎΠΉ строкой Π² классС, Ρ‚ΠΎ анимация Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ посрСдством ссылки Π½Π° Π½Π°Π±ΠΎΡ€ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²(@keyframes), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ описаны ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π² CSS.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация Π²Ρ‹ΠΏΠΎΠ»Π½ΡΠ»Π°ΡΡŒ ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ страницы ΠΈΠ»ΠΈ Π½ΡƒΠΆΠ½Π° Π±ΠΎΠ»Π΅Π΅ слоТная, Ρ‡Π΅ΠΌ ΠΎΡ‚ А состояния ΠΊ BΒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ, Ρ‚ΠΎ Π² Ρ‚Π°ΠΊΠΎΠΌ случаС болСС подходящим являСтся CSS анимация.

НапримСр: Π½ΡƒΠΆΠ½Π° анимация Π½Π° страницС, которая Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΡ€ΠΎΡˆΠ΅ΡΡ‚Π²ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠ°ΠΊ этот эффСкт мигания пСрсонаТа Baymax:

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ анимация ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ Π² случаС, Ссли элСмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΏΠΎ нСскольким мСстам Π½Π° страницС. НапримСр Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ: инструкция налоТСния с курсором ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… областСй Π½Π° экранС.

Иногда это Π½Π΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ

Π’ Π½Π΅Π΄Π°Π²Π½ΠΈΠΌ постС Π½Π°Ρ‡Π°Π» с Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Π·Π°Ρ‚Π΅ΠΌ стал ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ transitions.

Когда я Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ эти часы, стрСлки у мСня Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ бСспрСрывно Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ начиная с Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π­Ρ‚ΠΎ Π±Ρ‹Π» наглядный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для использования свойства animation. Анимация Π½Π°Ρ‡ΠΈΠ½Π°Π»Π°ΡΡŒ послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ бСсконСчно.Β  Когда я Π½Π°Ρ‡Π°Π» ΡƒΡΠ»ΠΎΠΆΠ½ΡΡ‚ΡŒ, Ρ‚ΠΎ я ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎΒ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JavaScript.

По ΠΌΠ΅Ρ€Π΅ использования JavaScript, ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡŒ понятно что с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌΒ ΠΎΡˆΠΈΠ±ΡΡ ΠΈΒ transitions Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Когда JavaScript измСняСт ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ стрСлки,Β CSS transitionΒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ (ΠΈΠ· состояния А Π² состояниС Π’) Π±ΠΎΠ»Π΅Π΅ элСгантно, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠΊΠ½ΠΈ ΠΏΠΎ ΡƒΡ€ΠΎΠΊΡƒΒ CSS часы.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Transition для создания ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ состояния ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, Π°Β animation для болСС слоТной ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСрии ΠΏΠ΅Ρ€Π΅Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ.

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ,Β transition Π»Π΅Π³Ρ‡Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° случаСв. Если Π½ΡƒΠΆΠ½ΠΎ большС контроля Π½Π°Π΄ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ элСмСнтом Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ€ΠΈΡŽ шагов (этапов) ΠΈΠ»ΠΈ Ссли ΠΏΡ€ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, Ρ‚ΠΎ анимация с ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ(@keyframes) Π²ΠΏΠΎΠ»Π½Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π°.

CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ


CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

CSS позволяСт Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСмСнты HTML Π±Π΅Π· использования JavaScript ΠΈΠ»ΠΈ Flash!

CSS

Π’ этой Π³Π»Π°Π²Π΅ Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… свойствах:

  • @keyframes
  • Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • функция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • анимация

Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Числа Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ свойство.

Π˜ΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ
@keyframes 43,0 10,0 16,0 9,0 30,0
Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43,0 10,0 16,0 9,0 30.0
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43,0 10,0 16,0 9,0 30,0
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43,0 10,0 16,0 9,0 30,0
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43,0 10,0 16.0 9,0 30,0
анимация-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ 43,0 10,0 16,0 9,0 30,0
функция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43,0 10,0 16,0 9,0 30,0
Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ 43.0 10,0 16,0 9,0 30,0
анимация 43,0 10,0 16,0 9,0 30,0

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ CSS-анимация?

Анимация позволяСт элСмСнту постСпСнно ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ стиля ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ свойств CSS, сколько Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ Ρ€Π°Π·.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ нСсколько ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² для
анимация.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ содСрТат стили, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ элСмСнт Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя.


ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes

Когда Π²Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ стили CSS Π²Π½ΡƒΡ‚Ρ€ΠΈ @keyframes
ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ, анимация Π±ΡƒΠ΄Π΅Ρ‚ постСпСнно ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ стиля ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ ΡΡ‚ΠΈΠ»ΡŽ
Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ врСмя.

Π§Ρ‚ΠΎΠ±Ρ‹ анимация Ρ€Π°Π±ΠΎΡ‚Π°Π»Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΊ элСмСнту.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ «ΠΏΡ€ΠΈΠΌΠ΅Ρ€» Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ привязываСтся ΠΊ элСмСнту

.Анимация Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ 4 сСкунды, ΠΈ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ постСпСнно ΠΌΠ΅Π½ΡΡ‚ΡŒ
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° элСмСнта

ΠΎΡ‚ «ΠΊΡ€Π°ΡΠ½ΠΎΠ³ΠΎ» Π΄ΠΎ «ΠΆΠ΅Π»Ρ‚ΠΎΠ³ΠΎ»:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/ * Код Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ * /
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ @keyframes {
ΠΈΠ· {background-color: red;}

ΠΊ {background-color: yellow;}
}

/ * Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ примСняСтся анимация * /
div {
width: 100px;
высота: 100 пиксСлСй;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Бвойство animation-duration
опрСдСляСт, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°Π½ΡΡ‚ΡŒ анимация.Если свойство animation-duration Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ,
Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ
Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ — 0 с (0 сСкунд).

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΡ‚ΠΈΠ»ΡŒ измСнится, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ
ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Β«ΠΎΡ‚Β» ΠΈ Β«Π΄ΠΎΒ» (Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ 0% (Π½Π°Ρ‡Π°Π»ΠΎ) ΠΈ 100% (Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ)).

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅
ΡΡ‚ΠΈΠ»ΡŒ мСняСтся ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ измСняСтся Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°

элСмСнт, ΠΊΠΎΠ³Π΄Π° анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 25%, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 50% ΠΈ снова, ΠΊΠΎΠ³Π΄Π° анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 100%:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/ * Код Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ * /
ΠΏΡ€ΠΈΠΌΠ΅Ρ€ @keyframes
{
0% {background-color: red;}

25% {background-color: yellow;}
50% {background-color: blue;}
100% {background-color: green;}
}

/ * Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ примСняСтся анимация * /
div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΈ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°, ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

элСмСнт, ΠΊΠΎΠ³Π΄Π° анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 25%, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 50% ΠΈ снова, ΠΊΠΎΠ³Π΄Π° анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 100%:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

/ * Код Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ * /
ΠΏΡ€ΠΈΠΌΠ΅Ρ€ @keyframes
{
0% {background-color: red; слСва: 0px; top: 0px;}

25% {Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ; слСва: 200 пиксСлСй; top: 0px;}

50% {Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: синий; слСва: 200 пиксСлСй; top: 200px;}

75% {Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: Π·Π΅Π»Π΅Π½Ρ‹ΠΉ; слСва: 0px; top: 200px;}

100% {Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный; слСва: 0px; top: 0px;}
}

/ * Π­Π»Π΅ΠΌΠ΅Π½Ρ‚, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ примСняСтся анимация * /
div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »



Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Бвойство animation-delay опрСдСляСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠ΅Ρ€Π΅Π΄ запуском Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π·Π°Π΄Π°Π½Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² 2 сСкунды:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;

ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 сСкунды;
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π”ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния. ΠŸΡ€ΠΈ использовании ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ анимация
начнСтся Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½ ΡƒΠΆΠ΅ ΠΈΠ³Ρ€Π°Π» Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ N сСкунд.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация начнСтся Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½Π° ΡƒΠΆΠ΅ Π±Ρ‹Π»Π°
ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π·Π° 2 сСкунды:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 сСкунды;
анимация-Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°: -2 с;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, сколько Ρ€Π°Π· анимация Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ

Бвойство animation-iteration-count опрСдСляСт, сколько Ρ€Π°Π· Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ анимация.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° 3 Ρ€Π°Π·Π° Π΄ΠΎ Π΅Π΅ остановки:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
width: 100px;
высота: 100 пиксСлСй;
позиция: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΡΡ‚ΡŒΒ».
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒΡΡ Π²Π΅Ρ‡Π½ΠΎ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:
бСсконСчный;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Анимация запуска Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ с Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠ²

Бвойство animation-direction ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚
слСдуСт Π»ΠΈ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄ ΠΈΠ»ΠΈ ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ
Ρ†ΠΈΠΊΠ»Ρ‹.

Бвойство Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • normal — Анимация воспроизводится ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ
    (Π½Π°ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅). Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • reverse — Анимация воспроизводится Π²
    ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (Π½Π°Π·Π°Π΄)
  • Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ — Воспроизводится анимация
    сначала Π²ΠΏΠ΅Ρ€Π΅Π΄, Π·Π°Ρ‚Π΅ΠΌ Π½Π°Π·Π°Π΄
  • Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ-ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ — Анимация воспроизводится
    сначала Π½Π°Π·Π°Π΄, Π·Π°Ρ‚Π΅ΠΌ Π²ΠΏΠ΅Ρ€Π΅Π΄

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ (Π½Π°Π·Π°Π΄):

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 сСкунды;
анимация-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:
ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ рСгрСсс;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉΒ» для создания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
сначала Π±Π΅Π³Π°Ρ‚ΡŒ Π²ΠΏΠ΅Ρ€Π΅Π΄, ΠΏΠΎΡ‚ΠΎΠΌ Π½Π°Π·Π°Π΄:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2;
анимация-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:
Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«alternate-reverseΒ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
сначала Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π½Π°Π·Π°Π΄, Π·Π°Ρ‚Π΅ΠΌ Π²ΠΏΠ΅Ρ€Π΅Π΄:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
width: 100px;
высота: 100 пиксСлСй;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 4 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2;
анимация-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅:
Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ-рСвСрсивный;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΡ€ΠΈΠ²ΡƒΡŽ скорости Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Бвойство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ опрСдСляСт ΠΊΡ€ΠΈΠ²ΡƒΡŽ скорости
анимация.

Бвойство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ — Π·Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π°Ρ‡Π°Π»ΠΎΠΌ, Π·Π°Ρ‚Π΅ΠΌ быстрым, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ΠΌ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ)
  • linear — Π—Π°Π΄Π°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°
  • easy-in — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ запуском
  • easy-out — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ†ΠΎΠΌ
  • easy-in-out — ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π°Ρ‡Π°Π»ΠΎΠΌ ΠΈ ΠΊΠΎΠ½Ρ†ΠΎΠΌ
  • cubic-bezier (n, n, n, n) — ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Π°ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ свои собствСнныС значСния Π² кубичСской Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘Π΅Π·ΡŒΠ΅

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΡ€ΠΈΠ²Ρ‹Ρ… скорости, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

# div1 {функция-врСмя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: линСйная;}
# div2
{функция-врСмя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ;}
# div3 {функция-Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:
easy-in;}
# div4 {функция-Ρ‚Π°ΠΉΠΌΠΈΠ½Π³Π°-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: easy-out;}
# div5
{анимация-Ρ‚Π°ΠΉΠΌΠΈΠ½Π³ΠΈ-функция: Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π°;}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

CSS-анимация Π½Π΅ влияСт Π½Π° элСмСнт Π΄ΠΎ воспроизвСдСния ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°
ΠΈΠ»ΠΈ послС воспроизвСдСния послСднСго ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°.Бвойство animation-fill-mode ΠΌΠΎΠΆΠ΅Ρ‚
ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ это ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.

Бвойство animation-fill-mode опрСдСляСт
ΡΡ‚ΠΈΠ»ΡŒ для Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ элСмСнта, ΠΊΠΎΠ³Π΄Π° анимация Π½Π΅ воспроизводится (Π΄ΠΎ этого
начинаСтся, послС окончания ΠΈΠ»ΠΈ ΠΈ Ρ‚ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅).

Бвойство animation-fill-mode ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ значСния:

  • Π½Π΅Ρ‚ — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Анимации Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚
    ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ стили ΠΊ элСмСнту Π΄ΠΎ ΠΈΠ»ΠΈ послС выполнСния
  • Π²ΠΏΠ΅Ρ€Π΅Π΄ — элСмСнт сохранит
    значСния стиля, Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ послСдним ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ (зависит ΠΎΡ‚ направлСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
    ΠΈ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ)
  • Π½Π°Π·Π°Π΄ — элСмСнт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΡΡ‚ΠΈΠ»ΡŒ
    значСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€ΠΎΠΌ (зависит ΠΎΡ‚ направлСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ), ΠΈ
    ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ это Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • ΠΎΠ±Π° — Анимация Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ
    ΠΊΠ°ΠΊ Π²ΠΏΠ΅Ρ€Π΅Π΄, Ρ‚Π°ΠΊ ΠΈ Π½Π°Π·Π°Π΄, Ρ€Π°ΡΡˆΠΈΡ€ΡΡ свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±ΠΎΠΈΡ…
    направлСния

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ элСмСнт

сохраняСт значСния стиля ΠΈΠ·
послСдний ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
width: 100px;
высота: 100 пиксСлСй;
Ρ„ΠΎΠ½: красный;
позиция: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 с;
Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π²ΠΏΠ΅Ρ€Π΅Π΄;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ элСмСнт

ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ значСния стиля, установлСнныС
ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ ΠΏΠ΅Ρ€Π΅Π΄ запуском Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ):

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
width: 100px;
высота: 100 пиксСлСй;
Ρ„ΠΎΠ½: красный;
позиция: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;
Animation-fill-mode: backwards;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ позволяСт элСмСнту

ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ установлСнныС значСния стиля.
ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌΡƒ ΠΊΠ°Π΄Ρ€Ρƒ ΠΏΠ΅Ρ€Π΅Π΄ запуском Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ сохранитС значСния стиля
ΠΎΡ‚ послСднСго ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div {
width: 100px;
высота: 100 пиксСлСй;
Ρ„ΠΎΠ½: красный;
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;
Animation-fill-mode: both;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


Бвойство сокращСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡˆΠ΅ΡΡ‚ΡŒ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

div
{
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€;

ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 5 с;

функция-врСмя-анимация: линСйная;

Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;

количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: бСсконСчно;

Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π’ΠΎΡ‚ ΠΆΠ΅ эффСкт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ достигнут с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сокращСния
анимация свойство:


ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ сСбя упраТнСниями!


Бвойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ пСрСчислСны ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes ΠΈ всС свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS:

CSS @keyframes ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π‘Π΄Π΅Π»Π°Ρ‚ΡŒ постСпСнноС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ элСмСнта Π½Π° 200 пиксСлСй Π²Π½ΠΈΠ·:

@keyframes mymove
{

ΠΎΡ‚ {top: 0px;}

Π½Π° {top: 200px;}
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ «ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ сами» Π½ΠΈΠΆΠ΅.


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ использованиС

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes опрСдСляСт ΠΊΠΎΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Анимация создаСтся ΠΏΡƒΡ‚Π΅ΠΌ постСпСнного ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° стилСй CSS ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ.

Π’ΠΎ врСмя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ стилСй CSS.

Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ стиля, Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов «from» ΠΈ
Β«ΠΊΒ», Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ 0% ΠΈ 100%. 0% — это Π½Π°Ρ‡Π°Π»ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, 100% — ΠΊΠΎΠ³Π΄Π° анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°.

Π‘ΠΎΠ²Π΅Ρ‚: Для Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ всСгда слСдуСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ сСлСкторы 0%, Ρ‚Π°ΠΊ ΠΈ сСлСкторы 100%.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ для управлСния внСшним Π²ΠΈΠ΄ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ для привязки Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΊ сСлСкторам.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ! Important игнорируСтся Π² ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ (см. ПослСдний ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π° этой страницС).


ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

Π¦ΠΈΡ„Ρ€Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ
ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ.

Числа, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ -webkit-, -moz- ΠΈΠ»ΠΈ -o- ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° с прСфиксом.

Π˜ΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ
@keyframes 43,0
4,0 -webkit-
10,0 16,0
5,0 -ΠΌΠΎΠ·-
9,0
4,0 -webkit-
30,0
15,0 -webkit-
12.0 -o-


Бинтаксис CSS

@keyframes animationname { keyframes-selector { css-styles;} }

Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ нСдвиТимости

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ОписаниС
имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
сСлСктор ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ДопустимыС значСния:

0-100%
ΠΎΡ‚ (ΠΊΠ°ΠΊ 0%)
to (Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ 100%)

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π£ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько сСлСкторов ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

CSS-стили ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. Одно ΠΈΠ»ΠΈ нСсколько допустимых свойств стиля CSS

Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ нСсколько сСлСкторов ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² Π² ΠΎΠ΄Π½Ρƒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ:

@keyframes mymove
{
0% {top: 0px;}
25% {top: 200px;}
50% {top: 100px;}
75% {top: 200px;}
100% {top: 0px;}
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ИзмСнСниС мноТСства стилСй CSS Π² ΠΎΠ΄Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:

@keyframes mymove
{

0% {top: 0px; Ρ„ΠΎΠ½: красный; width: 100px;}
100% {top: 200px; Ρ„ΠΎΠ½: ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ; width: 300px;}
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ сСлСкторов ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² с мноТСством стилСй CSS:

@keyframes mymove
{

0% {top: 0px; слСва: 0px; Ρ„ΠΎΠ½: красный;}
25% {top: 0px; слСва: 100 пиксСлСй; Ρ„ΠΎΠ½: синий;}
50% {top: 100px; слСва: 100 пиксСлСй; Ρ„ΠΎΠ½: ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ;}

75% {top: 100px; слСва: 0px; Ρ„ΠΎΠ½: Π·Π΅Π»Π΅Π½Ρ‹ΠΉ;}

100% {top: 0px; слСва: 0px; Ρ„ΠΎΠ½: красный;}
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ! Important игнорируСтся Π² ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅:

@keyframes myexample
{

from {top: 0px;}
50% {top: 100px! important;} / * игнорируСтся
* /

Π½Π° {top: 200px;}
}

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ сам »


БвязанныС страницы

Π£Ρ‡Π΅Π±Π½ΠΈΠΊ

CSS: Анимация CSS

ИспользованиС CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ — CSS: каскадныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ стилСй

CSS-анимация позволяСт Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ стиля CSS ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ.Анимация состоит ΠΈΠ· Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²: стиля, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS, ΠΈ Π½Π°Π±ΠΎΡ€Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояния стиля Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΡƒΡ‚Π΅Π²Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ.

Π£ CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… прСимущСства ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, управляСмой сцСнариями:

  1. Π˜Ρ… Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для простой Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΡ…, Π΄Π°ΠΆΠ΅ Π½Π΅ зная JavaScript.
  2. Анимация Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ срСднСй Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ систСмы.ΠŸΡ€ΠΎΡΡ‚Ρ‹Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ часто ΠΏΠ»ΠΎΡ…ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² JavaScript. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ пропуск ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ»Π°Π²Π½ΠΎΠΉ.
  3. Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ позволяСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Ρ частоту обновлСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² настоящСС врСмя Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS, Π²Ρ‹ Π·Π°Π΄Π°Π΅Ρ‚Π΅ ΡΡ‚ΠΈΠ»ΡŒ элСмСнту, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства animation ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств.Π­Ρ‚ΠΎ позволяСт Π²Π°ΠΌ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ врСмя, ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ Π½Π΅ , Π° Π½Π΅ , настраиваСт фактичСский внСшний Π²ΠΈΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ выполняСтся с использованиСм ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes , ΠΊΠ°ΠΊ описано Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с использованиСм ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²Β» Π½ΠΈΠΆΠ΅.

ΠŸΠΎΠ΄ΡΠ²ΠΎΠΉΡΡ‚Π²Π° свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ :

имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
Π—Π°Π΄Π°Π΅Ρ‚ имя at-ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes , ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
Π—Π°Π΄Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
функция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
НастраиваСт врСмя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ; Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ анимация ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹, устанавливая ΠΊΡ€ΠΈΠ²Ρ‹Π΅ ускорСния.
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
Π—Π°Π΄Π°Π΅Ρ‚ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ элСмСнта ΠΈ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
Π—Π°Π΄Π°Π΅Ρ‚ количСство ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΎΠ² Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ infinite , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ бСсконСчно.
Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ½Π° Π»ΠΈ анимация ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈΠ»ΠΈ ΡΠ±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒΡΡ Π΄ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ.
Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
Π—Π°Π΄Π°Π΅Ρ‚ значСния, примСняСмыС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Π΄ΠΎ ΠΈ послС Π΅Π΅ выполнСния.
состояниС воспроизвСдСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ настроили врСмя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ внСшний Π²ΠΈΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ достигаСтся установкой Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² с использованиСм ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes . ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ описываСт, ΠΊΠ°ΠΊ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ элСмСнт Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ синхронизация Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ опрСдСляСтся Π² стилС CSS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ <ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚> , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ врСмя Π²ΠΎ врСмя ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ΠΈ происходят.0% ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° 100% ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ состояниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эти Π΄Π²Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Π°ΠΊ Π²Π°ΠΆΠ½Ρ‹, Ρƒ Π½ΠΈΡ… Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ псСвдонимы: ΠΎΡ‚ ΠΈ с Π΄ΠΎ . Оба Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹. Если ΠΎΡ‚ / 0% ΠΈΠ»ΠΈ Π΄ΠΎ / 100% Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ запускаСт ΠΈΠ»ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ вычислСнныС значСния всСх Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ².

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ шаги ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Ρ‡Π°Π»ΠΎΠΌ ΠΈ ΠΊΠΎΠ½Ρ†ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: НСкоторым старым Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌ (Π΄ΠΎ 2017 Π³ΠΎΠ΄Π°) ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ прСфиксы; ΠΆΠΈΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ синтаксис с прСфиксом -webkit .

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ скольТСния тСкста ΠΏΠΎ ΠΎΠΊΠ½Ρƒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

Π­Ρ‚ΠΎΡ‚ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ стилизуСт элСмСнт

Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ тСкст скользил Π²Π½ΡƒΡ‚Ρ€ΡŒ с ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ края ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ страница ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΡˆΠΈΡ€Π΅, Ρ‡Π΅ΠΌ ΠΎΠΊΠ½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, помСститС элСмСнт для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ ΠΈ установитС overflow : hidden Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.

  ΠΏ {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
}

@keyframes slidein {
  ΠΈΠ· {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 100%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 300%;
  }

  ΠΊ {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 0%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  }
}
  

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΡΡ‚ΠΈΠ»ΡŒ для элСмСнта

ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ анимация Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 3 сСкунд ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°, с использованиСм свойства animation-duration ΠΈ Ρ‡Ρ‚ΠΎ имя @keyframes at- ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, называСтся Β«slideinΒ».

Если Π±Ρ‹ ΠΌΡ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΡΡ‚ΠΈΠ»ΡŒ для элСмСнта

отобраТался Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS, ΠΌΡ‹ Π±Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ Π΅Π³ΠΎ сюда; ΠΎΠ΄Π½Π°ΠΊΠΎ Π² этом случаС Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ стили, ΠΊΡ€ΠΎΠΌΠ΅ эффСкта Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ с использованиСм ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes . Π’ этом случаС Ρƒ нас всСго Π΄Π²Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ происходит ΠΏΡ€ΠΈ 0% (с использованиСм псСвдонима ΠΈΠ· ). Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ настраиваСм Π»Π΅Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ элСмСнта Π½Π° 100% (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π° дальнСм ΠΏΡ€Π°Π²ΠΎΠΌ ΠΊΡ€Π°ΡŽ содСрТащСго элСмСнта), Π° ΡˆΠΈΡ€ΠΈΠ½Ρƒ элСмСнта Π½Π° 300% (ΠΈΠ»ΠΈ Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° большС ΡˆΠΈΡ€ΠΈΠ½Ρ‹ содСрТащСго элСмСнта ).Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ выводится Π·Π° ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΊΡ€Π°ΠΉ ΠΎΠΊΠ½Π° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ (ΠΈ послСдний) ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ находится Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ 100% (с использованиСм псСвдонима ΠΎΡ‚ Π΄ΠΎ ). Π›Π΅Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ установлСно Π½Π° 0%, Π° ΡˆΠΈΡ€ΠΈΠ½Π° элСмСнта установлСна ​​на 100%. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Π΅Ρ‚ свою Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π²ΠΏΠ»ΠΎΡ‚Π½ΡƒΡŽ ΠΊ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ области содСрТимого.

  

ГусСница ΠΈ Алиса Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΌΠΎΠ»Ρ‡Π° смотрСли Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°: Π½Π°ΠΊΠΎΠ½Π΅Ρ† ГусСница Π²Ρ‹Π½ΡƒΠ»Π° кальян ΠΈΠ·ΠΎ Ρ€Ρ‚Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΊ Π΅Π΅ вялым, сонным голосом.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ CodePen, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π² срСдС CodePen.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ ΠΊ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. Допустим, ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° увСличивался Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ справа Π½Π°Π»Π΅Π²ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π»ΡΡ Π΄ΠΎ исходного Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ просто, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ этот ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€:

  75% {
  Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°: 300%;
  ΠΌΠ°Ρ€ΠΆΠ° слСва: 25%;
  ΡˆΠΈΡ€ΠΈΠ½Π°: 150%;
}
  

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ выглядит Ρ‚Π°ΠΊ:

  ΠΏ {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
}

@keyframes slidein {
  ΠΈΠ· {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 100%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 300%;
  }

  75% {
    Ρ€Π°Π·ΠΌΠ΅Ρ€ ΡˆΡ€ΠΈΡ„Ρ‚Π°: 300%;
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 25%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 150%;
  }

  ΠΊ {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 0%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  }
}
  
  

ГусСница ΠΈ Алиса Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΌΠΎΠ»Ρ‡Π° смотрСли Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°: Π½Π°ΠΊΠΎΠ½Π΅Ρ† ГусСница Π²Ρ‹Π½ΡƒΠ»Π° кальян ΠΈΠ·ΠΎ Ρ€Ρ‚Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΊ Π΅Π΅ вялым, сонным голосом.

Π­Ρ‚ΠΎ сообщаСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ, Ρ‡Ρ‚ΠΎ 75% ΠΏΡƒΡ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Π»Π΅Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ 25%, Π° ΡˆΠΈΡ€ΠΈΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ 150%.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ CodePen, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π² срСдС CodePen.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ повторСния

Π§Ρ‚ΠΎΠ±Ρ‹ анимация ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΠ»Π°ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ свойство animation-iteration-count , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, сколько Ρ€Π°Π· ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.Π’ этом случаС Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ infinite , Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΠ»Π°ΡΡŒ бСсконСчно:

  ΠΏ {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
  количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: бСсконСчно;
}
  

ДобавляСм ΠΊ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΊΠΎΠ΄Ρƒ:

  @keyframes slidein {
  ΠΈΠ· {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 100%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 300%;
  }

  ΠΊ {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 0%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  }
}
  
  

ГусСница ΠΈ Алиса Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΌΠΎΠ»Ρ‡Π° смотрСли Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°: Π½Π°ΠΊΠΎΠ½Π΅Ρ† ГусСница Π²Ρ‹Π½ΡƒΠ»Π° кальян ΠΈΠ·ΠΎ Ρ€Ρ‚Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΊ Π΅Π΅ вялым, сонным голосом.

ЗаставляСт Π΅Π³ΠΎ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄

Π­Ρ‚ΠΎ заставляСт Π΅Π³ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ, Π½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ странно, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ возвращаСтся ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° начинаСтся анимация. На самом Π΄Π΅Π»Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ двигался Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄ ΠΏΠΎ экрану. Π­Ρ‚ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, установив animation-direction Π½Π° alternate :

.

  ΠΏ {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
  количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: бСсконСчно;
  Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
}
  

А ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ΄:

  @keyframes slidein {
  ΠΈΠ· {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 100%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 300%;
  }

  ΠΊ {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 0%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  }
}
  
  

ГусСница ΠΈ Алиса Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя ΠΌΠΎΠ»Ρ‡Π° смотрСли Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°: Π½Π°ΠΊΠΎΠ½Π΅Ρ† ГусСница Π²Ρ‹Π½ΡƒΠ»Π° кальян ΠΈΠ·ΠΎ Ρ€Ρ‚Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΊ Π΅Π΅ вялым, сонным голосом.

ИспользованиС сокращСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для экономии мСста. НапримСр, ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ использовали Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅:

  ΠΏ {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
  количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: бСсконСчно;
  Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
}
  

МоТно Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°

  ΠΏ {
  анимация: 3 сСкунды бСсконСчноС Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ слайдов;
}
  

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° справочной страницС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ :

Установка Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ значСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми — эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ нСсколько Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π΅ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ Ρ‚. Π”.для Ρ€Π°Π·Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько быстрых ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ пСрСстановки:

Π’ этом ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρƒ нас установлСно Ρ‚Ρ€ΠΈ ΠΈΠΌΠ΅Π½ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ. Π’ этом случаС всСм Ρ‚Ρ€Π΅ΠΌ анимациям даСтся одинаковая ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ:

  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: fadeInOut, moveLeft300px, bounce;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 1;  

Π’ этом Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ значСния, установлСнныС для всСх Ρ‚Ρ€Π΅Ρ… свойств.Π’ этом случаС каТдая анимация запускаСтся с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ значСниями Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ свойствС, Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, fadeInOut ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 2,5 с ΠΈ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ 2 ΠΈ Ρ‚. Π”.

  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: fadeInOut, moveLeft300px, bounce;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2,5 с, 5 с, 1 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2, 1, 5;  

Π’ этом Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ случаС Π·Π°Π΄Π°Π½Ρ‹ Ρ‚Ρ€ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях, ΠΊΠΎΠ³Π΄Π° нСдостаточно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для присвоСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, значСния цикличСски ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°.Π’Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, fadeInOut ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 2,5 сСкунды, Π° moveLeft300px — 5 сСкунд. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ подошли ΠΊ ΠΊΠΎΠ½Ρ†Ρƒ доступных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, поэтому ΠΌΡ‹ снова Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ с самого Π½Π°Ρ‡Π°Π»Π° — поэтому Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ отскока составляСт 2,5 сСкунды. Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊΠΈ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ (ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ значСния свойств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅) Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: fadeInOut, moveLeft300px, bounce;
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2,5 с, 5 с;
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2, 1;  

ИспользованиС событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π½Π΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ события Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.Π­Ρ‚ΠΈ события, прСдставлСнныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ AnimationEvent , ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для обнаруТСния Π½Π°Ρ‡Π°Π»Π°, окончания ΠΈ Π½Π°Ρ‡Π°Π»Π° Π½ΠΎΠ²ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. КаТдоС событиС Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ врСмя, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π²Ρ‹Π·Π²Π°Π²ΡˆΠ΅ΠΉ событиС.

ΠœΡ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡΠΊΠΎΠ»ΡŒΠ·ΡΡ‰Π΅Π³ΠΎ тСкста, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ событии Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ происходит, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ CSS

НачнСм с создания CSS для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.Π­Ρ‚Π° анимация Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π»ΠΈΡ‚ΡŒΡΡ 3 сСкунды, Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ «скольТСниС», ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒΡΡ 3 Ρ€Π°Π·Π° ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅. Π’ @keyframes ΡˆΠΈΡ€ΠΈΠ½ΠΎΠΉ ΠΈ Π»Π΅Π²Ρ‹ΠΌ ΠΏΠΎΠ»Π΅ΠΌ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ элСмСнт скользил ΠΏΠΎ экрану.

  .slidein {
  ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3 сСкунды;
  имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: слайдин;
  количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 3;
  Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
}

@keyframes slidein {
  ΠΈΠ· {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 100%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 300%
  }

  ΠΊ {
    ΠΌΠ°Ρ€ΠΆΠ° слСва: 0%;
    ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  }
}  
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ JavaScript для ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ всСх Ρ‚Ρ€Π΅Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… событий Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ настраиваСт наши ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚Π΅Π»ΠΈ событий; ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ Π΅Π³ΠΎ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° для настройки.

  var element = document.getElementById ("watchme");
element.addEventListener ("запуск Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ", ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»ΡŒ, лоТь);
element.addEventListener ("animationend", ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»ΡŒ, лоТь);
element.addEventListener ("анимация", ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»ΡŒ, лоТь);

element.className = "слайд";
  

Π­Ρ‚ΠΎ довольно стандартный ΠΊΠΎΠ΄; Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ для eventTarget.addEventListener () . ПослСднСС, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ этот ΠΊΠΎΠ΄, — устанавливаСт класс для элСмСнта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π° Β«slideinΒ»; ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ это, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ? ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ событиС animationstart срабатываСт, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ начинаСтся анимация, Π° Π² нашСм случаС это происходит Π΄ΠΎ запуска нашСго ΠΊΠΎΠ΄Π°. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ сами Π½Π°Ρ‡Π½Π΅ΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, установив для класса элСмСнта ΡΡ‚ΠΈΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½ постфактум.

ΠŸΡ€ΠΈΠ΅ΠΌ событий

Бобытия Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ listener () , которая ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΆΠ΅.

  ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚Π΅Π»ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (событиС) {
  var l = document.createElement ("Π»ΠΈ");
  switch (event.type) {
    case "animationstart":
      l.textContent = `Начато: ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π΅ врСмя $ {event.elapsedTime}`;
      ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²;
    case "animationend":
      l.textContent = `Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ: ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠ΅Π΅ врСмя $ {event.elapsedTime}`;
      ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²;
    case "animationiteration":
      l.textContent = `Новый Ρ†ΠΈΠΊΠ» начался Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ $ {event.elapsedTime}`;
      ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²;
  }
  document.getElementById (Β«Π²Ρ‹Π²ΠΎΠ΄Β»). appendChild (l);
}
  

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Ρ‚ΠΎΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ простой.Он смотрит Π½Π° event.type , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ событиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π° Π·Π°Ρ‚Π΅ΠΌ добавляСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ Π²

    (нСупорядочСнный список), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для рСгистрации этих событий.

    Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΊΠΎΠ³Π΄Π° всС сказано ΠΈ сдСлано, выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

    • Начато: ΠΈΡΡ‚Π΅ΠΊΡˆΠ΅Π΅ врСмя 0
    • Новый Ρ†ΠΈΠΊΠ» начался Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ 3.012000083
    • Новый Ρ†ΠΈΠΊΠ» начался Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ 6.00600004196167
    • Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ: ΠΈΡΡ‚Π΅ΠΊΡˆΠ΅Π΅ врСмя 9.234000205993652

    ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ врСмя ΠΎΡ‡Π΅Π½ΡŒ Π±Π»ΠΈΠ·ΠΊΠΎ, Π½ΠΎ Π½Π΅ совсСм ΠΊ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡƒ, учитывая врСмя, установлСнноС ΠΏΡ€ΠΈ настройкС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ послС послСднСй ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ событиС animationiteration Π½Π΅ отправляСтся; вмСсто этого отправляСтся событиС animationend .

    HTML

    Для ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹, Π²ΠΎΡ‚ HTML-ΠΊΠΎΠ΄, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ содСрТимоС страницы, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ список, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ скрипт вставляСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… событиях:

      

    Π‘ΠΌΠΎΡ‚Ρ€ΠΈ, ΠΊΠ°ΠΊ я двигаюсь

    Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS для создания h2 элСмСнты ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΠΎ страницС.

    ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΡ‹ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ тСкст ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° запускаСтся событиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈΡ… Π² дСйствии.

    А Π²ΠΎΡ‚ ΠΈ ΠΆΠΈΠ²ΠΎΠΉ Π²Ρ‹Π²ΠΎΠ΄.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ страницу, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈΠ»ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ CodePen, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π² срСдС CodePen.

    animation-direction - CSS: каскадныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ стилСй

    Бвойство CSS animation-direction устанавливаСт, Π΄ΠΎΠ»ΠΆΠ½Π° Π»ΠΈ анимация Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄ ΠΈΠ»ΠΈ ΠΏΠΎΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π°Π·Π°Π΄ ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΌΠ΅ΠΆΠ΄Ρƒ воспроизвСдСниСм ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄.

    Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ этого ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° хранится Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ https://github.com/mdn/interactive-examples ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π½Π°ΠΌ запрос Π½Π° пСрСнос.

    Часто ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сокращСнноС свойство animation для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ установки всСх свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

     
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅;
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅;
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ-ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅;
    
    
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅, ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅;
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅, ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅, Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅;
    
    
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: наслСдованиС;
    анимация-Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅: Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ;
    Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π΅ установлСно;
      

    ЗначСния

    Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ
    Анимация воспроизводит Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ».Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° анимация цикличСски повторяСтся, анимация сбрасываСтся Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС ΠΈ начинаСтся Π·Π°Π½ΠΎΠ²ΠΎ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
    рСвСрс
    Анимация воспроизводится Π½Π° Π½Π°Π·Π°Π΄ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ». Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° анимация цикличСски повторяСтся, анимация сбрасываСтся Π΄ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ состояния ΠΈ начинаСтся Π·Π°Π½ΠΎΠ²ΠΎ. Π¨Π°Π³ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС, ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ синхронизации Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ. НапримСр, функция синхронизации ускорСнного Π²Ρ…ΠΎΠ΄Π° становится облСгчСния Π²Ρ‹Ρ…ΠΎΠ΄Π° .
    запасной
    Анимация мСняСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ», ΠΏΡ€ΠΈ этом пСрвая итСрация воспроизводится Π²ΠΏΠ΅Ρ€Π΅Π΄ . Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ, Ρ‡Π΅Ρ‚Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ», начинаСтся с Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹.
    Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅-рСвСрс
    Анимация мСняСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ†ΠΈΠΊΠ», ΠΏΡ€ΠΈ этом пСрвая итСрация воспроизводится Π½Π°Π·Π°Π΄ . Π‘Ρ‡Π΅Ρ‚Ρ‡ΠΈΠΊ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΉ, Ρ‡Π΅Ρ‚Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ Π½Π΅Ρ‡Π΅Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ», начинаСтся с Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : Когда Π²Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми, Π² свойствС animation- * , ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ анимациям, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π² свойствС animation-name , ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ ΠΈΡ… количСства.Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ см. Установка Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

    Анимация воспроизводится Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС

    HTML
      
    CSS
      .box {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: rebeccapurple;
      радиус Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 10 пиксСлСй;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
      высота: 100 пиксСлСй;
      имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ;
      ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 0,7 с;
      Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅;
    }
    
    @keyframes rotate {
      0% {
        ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ (0);
      }
      100% {
        ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ (360 градусов);
      }
    }  

    Π‘ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS.

    Π’Π°Π±Π»ΠΈΡ†Ρ‹ BCD Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅

    animation-name - CSS: Cascading Style Sheets

    Бвойство CSS animation-name опрСдСляСт ΠΈΠΌΠ΅Π½Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… @keyframes at-ΠΏΡ€Π°Π²ΠΈΠ», ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ»ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡƒΡŽ ΠΊ элСмСнту.

    Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ этого ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° хранится Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ GitHub. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ внСсти свой Π²ΠΊΠ»Π°Π΄ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ https://github.com/mdn/interactive-examples ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ Π½Π°ΠΌ запрос Π½Π° пСрСнос.

    Часто ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сокращСнноС свойство animation для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ установки всСх свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

     
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π΅Ρ‚;
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: test_05;
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: -спСцифичСская;
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ скольТСниС;
    
    
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: test1, animation4;
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π΅Ρ‚, зависит ΠΎΡ‚ -moz, ΡΠΊΠΎΠ»ΡŒΠ·ΠΈΡ‚;
    
    
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ  

    ЗначСния

    Π½Π΅Ρ‚
    Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово, Π½Π΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅Π΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹.Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π±Π΅Π· измСнСния порядка Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈΠ»ΠΈ для Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, исходящСй ΠΈΠ· каскада.
    <ΠΊΠ»ΠΈΠ΅Π½Ρ‚-Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊ>
    Имя, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ. Π­Ρ‚ΠΎΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ состоит ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊ рСгистру Π±ΡƒΠΊΠ² a – z , чисСл ΠΎΡ‚ 0 Π΄ΠΎ 9 , подчСркивания ( _ ) ΠΈ / ΠΈΠ»ΠΈ Ρ‚ΠΈΡ€Π΅ (–). ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ символом Π±Π΅Π· Ρ‚ΠΈΡ€Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π±ΡƒΠΊΠ²Π°.Π’Π°ΠΊΠΆΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹ Π΄Π²Π° дСфиса Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Ρ‚ , Π½Π΅ установлСн , Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ наслСдуСт .

    ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : Когда Π²Ρ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми, Π² свойствС animation- * , ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ анимациям, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π² свойствС animation-name , ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ ΠΈΡ… количСства. Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ см. Установка Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

    Анимация ΠΈΠΌΠ΅Π΅Ρ‚ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π°

    HTML
      
    CSS
      .box {
      Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: rebeccapurple;
      радиус Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 10 пиксСлСй;
      ΡˆΠΈΡ€ΠΈΠ½Π°: 100 пиксСлСй;
      высота: 100 пиксСлСй;
      имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ;
      ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 0,7 с;
    }
    
    @keyframes rotate {
      0% {
        ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ (0);
      }
      100% {
        ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ: ΠΏΠΎΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ (360 градусов);
      }
    }  

    Π‘ΠΌ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS.

    Π’Π°Π±Π»ΠΈΡ†Ρ‹ BCD Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€

    анимация | CSS-ΡƒΠ»ΠΎΠ²ΠΊΠΈ

    Бвойство animation Π² CSS ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… свойств CSS, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ color , background-color , height ΠΈΠ»ΠΈ width .ΠšΠ°ΠΆΠ΄ΡƒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ at-ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Ρ‚Π΅ΠΌ вызываСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойства animation , Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

      .element {
      анимация: ΠΏΡƒΠ»ΡŒΡ 5с бСсконСчный;
    }
    
    @keyframes pulse {
      0% {
        Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: # 001F3F;
      }
      100% {
        Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: # FF4136;
      }
    }  

    КаТдоС @keyframes at-ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ опрСдСляСт, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π²ΠΎ врСмя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. НапримСр, 0% - это Π½Π°Ρ‡Π°Π»ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° 100% - ΠΊΠΎΠ½Π΅Ρ†.Π­Ρ‚ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Π»ΠΈΠ±ΠΎ сокращСнным свойством animation , Π»ΠΈΠ±ΠΎ Π΅Π³ΠΎ восСмью ΠΏΠΎΠ΄-свойствами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π°Ρ‚ΡŒ большС контроля Π½Π°Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ эти ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ.

    Π‘ΡƒΠ±ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

    • имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ : ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ имя @keyframes at-ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ.
    • ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ : врСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
    • Ѐункция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ : устанавливаСт прСдустановлСнныС ΠΊΡ€ΠΈΠ²Ρ‹Π΅ ускорСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ линСйная .
    • animation-delay : врСмя ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ элСмСнта ΠΈ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (классныС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹).
    • animation-direction : устанавливаСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ послС Ρ†ΠΈΠΊΠ»Π°. Π•Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ сбрасываСтся Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅.
    • счСтчик-ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ : количСство Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° анимация.
    • animation-fill-mode : устанавливаСт, ΠΊΠ°ΠΊΠΈΠ΅ значСния ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π΄ΠΎ / послС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
      НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ послСднСС состояниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Π½Π° экранС, ΠΈΠ»ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π»ΠΎΡΡŒ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° анимация Π½Π°Ρ‡Π°Π»Π°ΡΡŒ.
    • состояниС воспроизвСдСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ : ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ / воспроизвСсти Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

    Π­Ρ‚ΠΈ подсвойства ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

      @keyframes stretch {
      / * здСсь объявляСм дСйствия Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ * /
    }
    
    .element {
      имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Ρ€Π°ΡΡ‚ΡΠ½ΡƒΡ‚ΡŒ;
      ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 1,5 с;
      анимация-функция-Ρ‚Π°ΠΉΠΌΠΈΠ½Π³: Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΠ΅;
      Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 0 с;
      Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅;
      количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: бСсконСчно;
      Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Π½Π΅Ρ‚;
      состояниС воспроизвСдСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚;
    }
    
    / *
      Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΊΠ°ΠΊ:
    * /
    
    .element {
      анимация:
        протяТСниС
        1,5 с
        ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅
        0 с
        Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ
        бСсконСчный
        Π½ΠΈΠΊΡ‚ΠΎ
        Π‘Π΅Π³;
    }  

    Π’ΠΎΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· этих подсвойств:

    функция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ, Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄Π°, Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π°, Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π°, линСйная, кубичСская кривая Π‘Π΅Π·ΡŒΠ΅ (x1, y1, x2, y2) (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, кубичСская бСзьС (0,5 , 0,2, 0,3, 1,0))
    ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Xs ΠΈΠ»ΠΈ Xms
    Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Xs ΠΈΠ»ΠΈ Xms
    количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ X
    animation-fill-mode Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄, ΠΎΠ±Π°, Π½Π΅Ρ‚
    animation-direction normal, Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ
    animation-play-state paused, running , Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

    НСсколько шагов

    Если анимация ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ свойства, ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ запятыми значСния 0% ΠΈ 100% Π²Π½ΡƒΡ‚Ρ€ΠΈ @keyframes :

      @keyframes pulse {
      0%, 100% {
        Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: ΠΆΠ΅Π»Ρ‚Ρ‹ΠΉ;
      }
      50% {
        Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
      }
    }  

    НСсколько Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ

    Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ значСния запятыми, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ нСсколько Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ Π² сСлСкторС.Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ ΠΊΡ€ΡƒΠ³Π° Π² @keyframe , ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ пСрСмСщая Π΅Π³ΠΎ ΠΈΠ· стороны Π² сторону с Π΄Ρ€ΡƒΠ³ΠΈΠΌ.

      .element {
      анимация:
        ΠΈΠΌΠΏΡƒΠ»ΡŒΡ 3 с ослаблСниС бСсконСчноС Ρ‡Π΅Ρ€Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅,
        nudge 5s Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ бСсконСчный Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ;
    }  

    ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

    Анимация Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° свойств - это ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, поэтому ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΡΠ²Π»ΡΡ‚ΡŒ ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ свойство. Однако Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ бСзопасно Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ:

    • transform: translate ()
    • transform: scale ()
    • transform: rotate ()
    • opacity

    КакиС свойства ΠΌΠΎΠΆΠ½ΠΎ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ?

    MDN ΠΈΠΌΠ΅Π΅Ρ‚ список свойств CSS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.АнимированныС свойства ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΡŽ ΠΊ Ρ†Π²Π΅Ρ‚Ρƒ ΠΈ числам. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π½Π΅Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ свойства являСтся background-image .

    ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°

    Desktop
    Chrome Firefox IE Edge Safari
    4 * 5 * 10 12 5.1 *
    Mobile / Mobile
    Android Chrome Android Firefox Android iOS Safari
    89 86 4 * 6.0-6,1 *

    Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация

    CSS Animation ΠΈ свойство @Keyframes

    < html >

    < head >

    35 title >

    Анимация CSS ΠΈ свойство @Keyframes

    title >

    < style 9 9000 body {

    background-color: #fff;

    }

    .батарСя {

    высота: 140 пиксСлСй;

    ΡˆΠΈΡ€ΠΈΠ½Π°: 321 пиксСлСй;

    Π³Ρ€Π°Π½ΠΈΡ†Π°: сплошная 5px # 000;

    border-radius: 7px;

    позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;

    ΠΌΠ°Ρ€ΠΆΠ°: Π°Π²Ρ‚ΠΎ;

    ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 0;

    ΠΏΡ€Π°Π²Ρ‹ΠΉ: 0;

    снизу: 0;

    Π²Π΅Ρ€Ρ…: 0;

    }

    .Π²Π΅Ρ€Ρ… {

    высота: 40 пиксСлСй;

    ΡˆΠΈΡ€ΠΈΠ½Π°: 25 пиксСлСй;

    Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: # 000;

    ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;

    слСва: 325 пиксСлСй;

    Π²Π΅Ρ€Ρ…: 52 пиксСля;

    радиус Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 0 3px 3px 0;

    }

    .charge1,

    .charge2,

    .charge3, ​​

    .charge4 {

    ΡˆΠΈΡ€ΠΈΠ½Π°: 75 пиксСлСй;

    высота: 130 пиксСлСй;

    Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: # 3BC700;

    ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 0;

    }

    .charge1 {

    ΠΏΠΎΠ»Π΅: 9px 2px 3px 6px;

    снизу: 44 пиксСля;

    анимация: заряд-1 2с бСсконСчно;

    }

    .charge2 {

    ΠΌΠ°Ρ€ΠΆΠ°: 9px 9px 3px 9px;

    снизу: 183px;

    слСва: 75 пиксСлСй;

    анимация: заряд-2 2с бСсконСчно;

    }

    .charge3 {

    ΠΏΠΎΠ»Π΅: 9px 9px 3px 12px;

    снизу: 322 пиксСля;

    слСва: 150 пиксСлСй;

    анимация: заряд-3 2с бСсконСчно;

    }

    .charge4 {

    ΠΌΠ°Ρ€ΠΆΠ°: 9px 2px 3px 15px;

    снизу: 461px;

    слСва: 225 пиксСлСй;

    анимация: заряд-4 2с бСсконСчно;

    }

    @keyframes charge-1 {

    25%,

    10014 9

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 1;

    }

    }

    @keyframes charge-2 {

    36 % {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 0;

    }

    50%,

    100% {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 1;

    }

    }

    @keyframes charge-3 {

    36 % {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 0;

    }

    75%,

    100% {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 1;

    }

    }

    @keyframes charge-4 {

    36 0%,

    36 % {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 0;

    }

    100% {

    Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 1;

    }

    }

    ΡΡ‚ΠΈΠ»ΡŒ >

    Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° >

    корпус >

    < div class = «аккумулятор» >

    < div class = Β«Π²Π΅Ρ€Ρ…Β» > div >

    < div class = "charge1" > div >

    < div class = "charge2" > div >

    < div class = "charge3" > div >

    < div class = "charge4" > div >

    div >

    корпус >

    HTML >

    .

    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

    Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *