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

animation — CSS | MDN


  animation: 3s ease-in 1s 2 reverse both paused slidein;


  animation: 3s linear 1s slidein;


  animation: 3s slidein;

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ Π²Π°ΠΆΠ΅Π½ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ <time> присваиваСтся animation-duration, ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ animation-delay.

Note that order is also important within each animation definition for distinguishing animation-name values from other keywords. When parsing, keywords that are valid for properties other than animation-name whose values were not found earlier in the shorthand must be accepted for those properties rather than for animation-name. Furthermore, when serializing, default values of other properties must be output in at least the cases necessary to distinguish an animation-name that could be a value of another property, and may be output in additional cases.

Учитывая всС спСцифичныС для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² прСфиксы, Π²ΠΎΡ‚ анимация цилиндричСского Π³Π»Π°Π·Π°, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Ρ‹ ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²ΠΎ всСх основных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…:

<div>
  <div>
    Listening for dispatches
  </div>
  <div></div>
</div>
.polling_message {
  color: white;
  float: left;
  margin-right: 2%;
}

.view_port {
  background-color: black;
  height: 25px;
  width: 100%;
  overflow: hidden;
}

.cylon_eye {
  background-color: red;
  background-image: -webkit-linear-gradient(    left, rgba( 0,0,0,0.9 ) 25%, rgba( 0,0,0,0.1 ) 50%, rgba( 0,0,0,0.9 ) 75%);
  background-image:    -moz-linear-gradient(    left, rgba( 0,0,0,0.9 ) 25%, rgba( 0,0,0,0.1 ) 50%, rgba( 0,0,0,0.9 ) 75%);
  background-image:      -o-linear-gradient(    left, rgba( 0,0,0,0.9 ) 25%, rgba( 0,0,0,0.1 ) 50%, rgba( 0,0,0,0.9 ) 75%);
  background-image:         linear-gradient(to right, rgba( 0,0,0,0.9 ) 25%, rgba( 0,0,0,0.1 ) 50%, rgba( 0,0,0,0.
9 ) 75%); color: white; height: 100%; width: 20%; -webkit-animation: 4s linear 0s infinite alternate move_eye; -moz-animation: 4s linear 0s infinite alternate move_eye; -o-animation: 4s linear 0s infinite alternate move_eye; animation: 4s linear 0s infinite alternate move_eye; } @-webkit-keyframes move_eye { from { margin-left:-20%; } to { margin-left:100%; } } @-moz-keyframes move_eye { from { margin-left:-20%; } to { margin-left:100%; } } @-o-keyframes move_eye { from { margin-left:-20%; } to { margin-left:100%; } } @keyframes move_eye { from { margin-left:-20%; } to { margin-left:100%; } }

animation-direction — CSS | MDN

Experimental

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

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

Π’Π°ΠΊΠΆΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сокращСнноС свойство animation, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всС свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.


animation-direction: normal;
animation-direction: reverse;
animation-direction: alternate;
animation-direction: alternate-reverse;


animation-direction: normal, reverse;
animation-direction: alternate, reverse, normal;


animation-direction: inherit;
animation-direction: initial;
animation-direction: unset;

ЗначСния

normal
Анимация проигрываСтся Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΡŽ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° анимация заканчиваСтся, ΠΎΠ½Π° сразу сбрасываСтся Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ снова проигрываСтся. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
reverse
Анимация проигрываСтся Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, с послСднСго полоТСния Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ снова сбрасываСтся Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ снова проигрываСтся.
alternate
Анимация мСняСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ ΠΎΠ½Π° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ с Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ полоТСния, Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ, Π° Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ с ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΈ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅, Π² зависимости ΠΎΡ‚ количСства Ρ†ΠΈΠΊΠ»ΠΎΠ² Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ animation-iteration-count.
alternate-reverse
Анимация Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ с ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ полоТСния ΠΈ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ, Π° Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ†ΠΈΠΊΠ»Π΅ продолТая с Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅, Π² зависимости ΠΎΡ‚ количСства ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ animation-iteration-count.

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ синтаксис

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹Β CSS Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ.

FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support(Π”Π°)-webkit5.0 (5. 0)-moz
16.0 (16.0)
1012-o
12.50
4.0-webkit
reverse1916.0 (16.0)10НСтНСт
alternate-reverse1916.0 (16.0)10
НСт
НСт
Unprefixed43.0????
FeatureAndroidAndroid WebviewFirefox Mobile (Gecko)IE PhoneOpera MobileSafari MobileChrome for Android
Basic support??5.0 (5.0)-moz
16.0 (16.0)
???(Π”Π°)-webkit
reverseНСт?16.0 (16.0)??НСт
(Π”Π°)-webkit
alternate-reverse??16. 0 (16.0)???(Π”Π°)-webkit
Π‘Π΅Π· прСфиксовНСтНСт????43.0

animation-delay — CSS | MDN

Experimental

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

CSS свойство animation-delay опрСдСляСт врСмя Π·Π°Π΄Π΅ΠΆΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ стартом Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

The source for this interactive example is stored in a GitHub repository. If you’d like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0s, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ анимация Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ‡Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΏΡ€Π΅ΠΌΠ΅Π½Π½ΠΎ. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, старт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½ Π½Π° ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ врСмя.

ΠŸΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния, анимация Ρ‚Π°ΠΊΠΆΠ΅ начнСтся Π½Π΅ΠΏΡ€Π΅ΠΌΠ΅Π½Π½ΠΎ, Π½ΠΎ Π΅Π΅ воспроизвСдСниС начнСтся Π½Π΅ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°, Π° Ρ‚Π°ΠΊ, Π±ΡƒΠ΄Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΡƒΠΆΠ΅ Π±Ρ‹Π»Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Π°. НапримСр, Ссли Π²Ρ‹ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ -1s, анимация Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚Π° с ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°, ΠΊΠΎΠ³Π΄Π° 1 сСкунда Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΡƒΠΆΠ΅ Π±Ρ‹Π»Π° воспроизвСдСна.

animation-delay: 3s;
animation-delay: 2s, 4ms;

ЗначСния

<time>
ВрСмя Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ стартом Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Π² сСкундах (s), Π»ΠΈΠ±ΠΎ Π² милисСкундах (ms). Если Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ измСрСния, свойство Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ синтаксис

FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari (WebKit)
Basic support(Π”Π°)-webkit
43. 0
5.0 (5.0)-moz
16.0 (16.0)
1012-o
12.10
4.0-webkit
FeatureAndroidFirefox Mobile (Gecko)IE PhoneOpera MobileSafari MobileChrome for Android
Basic support(Π”Π°)-webkit5.0 (5.0)-moz
16.0 (16.0)
?12-o(Π”Π°)-webkit?

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

Experimental

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

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

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

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

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

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

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

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

Π’ Ρ‚ΠΎ врСмя, ΠΊΠ°ΠΊ врСмСнныС характСристики (ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ) ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π² стилях для Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ элСмСнта, ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹Β ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 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, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π΅ΠΉ саму Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΊΠ°ΠΊ «slidein».

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

KΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅Β ΠΊΠ°Π΄Ρ€Ρ‹Β ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π²Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈ 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 cвойство Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈΒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми.Β Π­Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ,Β Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π΅Β ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, число ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΉΒ ΠΈ Ρ‚.Π΄., для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ. Рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ.

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

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, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° начинаСтся ΠΈ заканчиваСтся анимация ΠΈΠ»ΠΈ начинаСтся новая итСрация. КаТдоС событиС содСрТит момСнт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π° Ρ‚Π°ΠΊΠΆΠ΅ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, которая Π²Ρ‹Π·Π²Π°Π»Π° событиС.

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

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

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

.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>

ΠŸΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ на чистом CSS β€” Π‘Π»ΠΎΠ³ HTML Academy

Π—Π½Π°Π½ΠΈΠ΅ Π‘SS Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ интСрфСйсы ΠΈΒ ΠΎΡ„ΠΎΡ€ΠΌΠ»ΡΡ‚ΡŒ страницы сайта: ΡΡ‚ΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ тСкст, ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ элСмСнты. А Сщё cΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΡ€ΡƒΡ‚Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏΡ‹ ΠΈΒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ. Π‘ΠΎΠ±Ρ€Π°Π»ΠΈ ΠΏΡΡ‚ΡŒ нСстандартных ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² использования языка.

Π›ΠΎΠ³ΠΎΡ‚ΠΈΠΏΡ‹ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ²

НарисуйтС свой Π»ΠΎΠ³ΠΎΡ‚ΠΈΠΏ любимого Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈΒ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ он стал ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΈΒ ΠΆΠΈΠ²Ρ‹ΠΌ. Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΒ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS.

See the Pen Browsers byΒ Jordano AragΓ£o (@jordanoaragao) onΒ CodePen.

Π›ΠΎΠ°Π΄Π΅Ρ€

Π‘Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° информация с сСрвСра загрузится на сайт. ОТиданиС ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.

See the Pen Pure CSS Truck Loader byΒ 0Γ—5e0Γ—5e (@0Γ—5e0Γ—5e) onΒ CodePen.

БэтмСн

МоТно бСсконСчно ΡΠΏΠΎΡ€ΠΈΡ‚ΡŒ, какая всСлСнная Π»ΡƒΡ‡ΡˆΠ΅Β β€” Marvel ΠΈΠ»ΠΈ DC. А моТно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ БэтмСна.

Pure CSS!»>See the Pen Batman Animation Draw. Pure CSS! byΒ Paul (@Maseone) onΒ CodePen.

Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 404

Когда на сайтС Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚ страницу с Сё кодом. Для Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… сайтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ страницу, стилизуя Сё. Π’Π°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Ρ‡ΡƒΡ‚ΡŒ мСньшС Ρ€Π°ΡΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒΡΡ ΠΈΠ·-Π·Π° возникшСй ошибки.

See the Pen Pure CSS 404 Error Page byΒ Peiman (@pjthedj) onΒ CodePen.

Ноутбук

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΌΠΈΠ»Ρ‹ΠΉ ΡƒΠ»Ρ‹Π±Π°ΡŽΡ‰ΠΈΠΉΡΡ Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с анимациСй Π½Π°Β CSS.

See the Pen Laptop Pure CSSΒ β€” Day 37 #dailycssimages byΒ FireMugen (@firemugen) onΒ CodePen.

ИспользованиС Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ инструмСнта для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ нСстандартных Π·Π°Π΄Π°Ρ‡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠ΅ CSS-свойства ΠΈΒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ их для создания слоТных интСрфСйсов. А новички смогут ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ свойства языка Π²Β ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΒ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΈ.

ΠŸΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с анимациСй ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Β ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ курсС «ДинамичСскиС эффСкты».

Анимация 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);

}

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

CSS Подсказка


Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS.


Π”Π΅ΠΌΠΎ: ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ подсказок

Π’ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для указания Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‡Π΅ΠΌ-Π»ΠΈΠ±ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ Π½Π° элСмСнт:


Базовая подсказка

Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ подсказку, которая появляСтся, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ Π½Π° элСмСнт:

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


/ * ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ подсказки * /
. tooltip {
position: relative;
дисплСй: встроСнный Π±Π»ΠΎΠΊ;
ниТняя Π³Ρ€Π°Π½ΠΈΡ†Π°: 1 пиксСль с Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Ρ‡Π΅Ρ€Π½ΠΈΡ‚ΡŒ; / * Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ парящим тСкстом появлялись Ρ‚ΠΎΡ‡ΠΊΠΈ * /
}

/ * ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки * /
.tooltip .tooltiptext {
Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ: скрыто;
ΡˆΠΈΡ€ΠΈΠ½Π°: 120 пиксСлСй;
Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ;
Ρ†Π²Π΅Ρ‚: #fff;
Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ тСкста: ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ;
отступ: 5 пиксСлСй 0;
радиус Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 6 пиксСлСй;

/ * ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки — см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΈΠΆΠ΅! * /
позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
z-индСкс: 1;
}

/ * ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора Π½Π° ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки * /
.tooltip: hover .tooltiptext {
Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ: Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΉ;
}

НавСдСниС надо мной
Подсказка тСкст

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

ОбъяснСниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°

HTML: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ элСмСнт ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,

) ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ "Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка" класс ΠΊ Π½Π΅ΠΌΡƒ. Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ курсор Π½Π° этот
, отобраТаСтся тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки.

ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки помСщаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ встроСнного элСмСнта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ) с class = "tooltiptext" .

CSS: Подсказка класса ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ : ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для размСщСния тСкста Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки (позиция : Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ ). ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π‘ΠΌ. НиТС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ размСщСния Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки.

Класс tooltiptext содСрТит фактичСский тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки.это ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ скрыт ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ курсора (см. Π½ΠΈΠΆΠ΅). ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ основныС стили ΠΊ Π½Π΅ΠΌΡƒ: ΡˆΠΈΡ€ΠΈΠ½Π° 120 пиксСлСй, Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°, Π±Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚ тСкста, тСкст ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΈ отступ 5 пиксСлСй свСрху ΠΈ снизу.

Бвойство CSS border-radius ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для добавлСния Π·Π°ΠΊΡ€ΡƒΠ³Π»Π΅Π½Π½Ρ‹Ρ… ΡƒΠ³Π»ΠΎΠ² ΠΊ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказкС. тСкст.

Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ : hover ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния тСкста Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ Π½Π°

с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ class = "tooltip" .



Подсказки позиционирования

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка помСщаСтся справа ( слСва: 105% ) ΠΎΡ‚ «hoverable» тСкст (

). Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ top: -5px ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для размСщСния Π΅Π³ΠΎ Π² сСрСдинС элСмСнта ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€ 5 , ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки ΠΈΠΌΠ΅Π΅Ρ‚ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ ΠΈ ниТняя ΠΎΠ±ΠΈΠ²ΠΊΠ° 5 пиксСлСй. Если Π²Ρ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚Π΅ Π΅Π³ΠΎ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΡŒΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства top Π΄ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ остаСтся посСрСдинС (Ссли Π²Ρ‹ этого Ρ…ΠΎΡ‚ΠΈΡ‚Π΅).Π’Π°ΠΊΠΎΠΉ ΠΆΠ΅ примСняСтся, Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ подсказку слСва.

ΠŸΡ€Π°Π²Π°Ρ подсказка

.tooltip .tooltiptext {
top: -5px;
оставили: 105%;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

ЛСвая подсказка

.tooltip .tooltiptext {
top: -5px;
Π²Π΅Ρ€Π½ΠΎ: 105%;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»Π°ΡΡŒ свСрху ΠΈΠ»ΠΈ снизу, см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½ΠΈΠΆΠ΅.ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ свойство margin-left со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ минус 60. пиксСлСй. Π­Ρ‚ΠΎ дСлаСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ подсказку Π½Π°Π΄ / ΠΏΠΎΠ΄ Π½Π°Π΄ΠΌΡ‹Ρ‚Ρ‹ΠΌ тСкстом. УстановлСно Π΄ΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ‹ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки (120/2 = 60).

ВСрхняя подсказка

.tooltip .tooltiptext {
width: 120px;
Π²Π½ΠΈΠ·Ρƒ: 100%;
ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 50%;
margin-left: -60 пиксСлСй; / * Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ (120/2 = 60), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ подсказку * /
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

НиТняя подсказка

.Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка .tooltiptext {
width: 120px;
Π²Π΅Ρ€Ρ…: 100%;
ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 50%;
margin-left: -60 пиксСлСй; / * Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ (120/2 = 60), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ подсказку * /
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

Π‘Ρ‚Ρ€Π΅Π»ΠΊΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ стрСлку, которая Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ стороны Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ «пустой» содСрТаниС послС Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка с классом псСвдоэлСмСнта :: послС вмСстС с содСрТимым свойство. Π‘Π°ΠΌΠ° стрСлка создана с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π³Ρ€Π°Π½ΠΈΡ†. Π­Ρ‚ΠΎ сдСлаСт Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ подсказку выглядят ΠΊΠ°ΠΊ Ρ€Π΅Ρ‡Π΅Π²ΠΎΠΉ ΠΏΡƒΠ·Ρ‹Ρ€ΡŒ.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ стрСлку Π² ниТнюю Ρ‡Π°ΡΡ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки:

Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° снизу

.tooltip .tooltiptext :: after {
content: «»;
позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
Π²Π΅Ρ€Ρ…: 100%; / * Π’Π½ΠΈΠ·Ρƒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки * /
left: 50%;
лСвоС полС: -5 пиксСлСй;
ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 5 пиксСлСй;
ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сплошной;
Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

ОбъяснСниС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ стрСлку Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки: Π²Π²Π΅Ρ€Ρ…Ρƒ: 100% помСстит стрСлку Π² Π²Π½ΠΈΠ·Ρƒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки. слСва: 50% помСстит стрСлку ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Бвойство border-width опрСдСляСт Ρ€Π°Π·ΠΌΠ΅Ρ€ стрСлка. Если Π²Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ это, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ margin-left Π½Π° Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅. Π­Ρ‚ΠΎΡ‚ стрСлка Π±ΡƒΠ΄Π΅Ρ‚ Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅.

Π¦Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для прСобразования содСрТимого Π² стрСлку. ΠœΡ‹ устанавливаСм вСрхняя Π³Ρ€Π°Π½ΠΈΡ†Π° станСт Ρ‡Π΅Ρ€Π½ΠΎΠΉ, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ — ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠΉ. Если Π±Ρ‹ всС стороны Π±Ρ‹Π»ΠΈ Ρ‡Π΅Ρ€Π½Ρ‹ΠΌΠΈ, Ρ‚Ρ‹ Π² ΠΈΡ‚ΠΎΠ³Π΅ получится Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ стрСлку Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π° этот Ρ€Π°Π· ΠΌΡ‹ установили Ρ†Π²Π΅Ρ‚ Π½ΠΈΠΆΠ½Π΅ΠΉ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹:

ВСрхняя стрСлка

.tooltip .tooltiptext :: after {
content: «»;
позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
Π½ΠΈΠ·: 100%; / * Π’Π²Π΅Ρ€Ρ…Ρƒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки * /
ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 50%;
лСвоС полС: -5 пиксСлСй;
ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 5 пиксСлСй;
ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сплошной;
Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ стрСлку слСва ΠΎΡ‚ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки:

Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²Π»Π΅Π²ΠΎ

. tooltip .tooltiptext :: after {
content: «»;
позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
Π²Π΅Ρ€Ρ…: 50%;
справа: 100%; / * Π‘Π»Π΅Π²Π° ΠΎΡ‚ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки * /
margin-top: -5px;
ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 5 пиксСлСй;
ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сплошной;
Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ стрСлку справа ΠΎΡ‚ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки:

Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²ΠΏΡ€Π°Π²ΠΎ

.tooltip .tooltiptext :: after {
content: «»;
позиция: Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Π°Ρ;
Π²Π΅Ρ€Ρ…: 50%;
ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ: 100%; / * Π‘ΠΏΡ€Π°Π²Π° ΠΎΡ‚ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка * /
margin-top: -5px;
ΡˆΠΈΡ€ΠΈΠ½Π° Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: 5 пиксСлСй;
ΡΡ‚ΠΈΠ»ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: сплошной;
Ρ†Π²Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹: ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ;
}

Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:

НавСдитС Π½Π°Π΄ΠΎ ΠΌΠ½ΠΎΠΉ ВСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки

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

Π’ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ подсказки (анимация)

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ тСкст Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ подсказки исчСзал, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²ΠΎΡ‚-Π²ΠΎΡ‚ станСт Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° CSS вмСстС с Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒΡŽ свойство, ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΎΡ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΊ 100% Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство сСкунд (1 сСкунда Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅):

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

. tooltip .tooltiptext {
opacity: 0;
ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄: Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ 1 с;
}

.tooltip: hover .tooltiptext {
Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ: 1;
}

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

animation - CSS: Cascading Style Sheets

Π­Ρ‚ΠΎ свойство являСтся сокращСниСм для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… свойств CSS:

Бвойство animation опрСдСляСтся ΠΊΠ°ΠΊ ΠΎΠ΄Π½Π° ΠΈΠ»ΠΈ нСсколько ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми.

КаТдая ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ анимация указываСтся ΠΊΠ°ΠΊ:

  • ноль ΠΈΠ»ΠΈ ΠΎΠ΄Π½ΠΎ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ:
  • Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ имя для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ none , ΠΈΠ»ΠΈ
  • ноль, ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄Π²Π° <врСмя> Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π²Π°ΠΆΠ΅Π½: ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ <врСмя> , назначаСтся animation-duration , Π° Π²Ρ‚ΠΎΡ€ΠΎΠ΅ назначаСтся animation-delay .

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

ЗначСния

<количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ>
ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ воспроизвСдСний Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· доступных Π² animation-iteration-count .
<Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ>
НаправлСниС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ воспроизводится анимация. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· доступных Π² animation-direction .
<Ρ€Π΅ΠΆΠΈΠΌ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ>
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, ΠΊΠ°ΠΊ стили Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊ Ρ†Π΅Π»ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π΄ΠΎ ΠΈ послС Π΅Π΅ выполнСния. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· доступных Π² animation-fill-mode .
<состояниС ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ>
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, воспроизводится анимация ΠΈΠ»ΠΈ Π½Π΅Ρ‚. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· доступных Π² animation-play-state .

МиганиС ΠΈ ΠΌΠΈΠ³Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌΠΈ для людСй с ΠΊΠΎΠ³Π½ΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ синдром Π΄Π΅Ρ„ΠΈΡ†ΠΈΡ‚Π° внимания ΠΈ гипСрактивности (Π‘Π”Π’Π“). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠΌ вСстибулярных расстройств, эпилСпсии, ΠΌΠΈΠ³Ρ€Π΅Π½ΠΈ ΠΈ скотопичСской Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

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

  <одиночная анимация> # Π³Π΄Π΅ <одиночная анимация> = <врСмя> || <функция ослаблСния> || <врСмя> || <количСство ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ> || <Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ> ||  ||  || [Π½Π΅Ρ‚ | <имя-ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π°>], Π³Π΄Π΅ <функция-Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚Π΅Π»ΡŒ> = Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ |  | <функция синхронизации шага> <количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ> = бСсконСчно | <число> <Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ> = Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ | ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ | Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ | Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ-ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ  = none | Π½Π°ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ | Π½Π°Π·Π°Π΄ | ΠΎΠ±Π°  = running | приостановлСно <имя-ΠΊΠ°Π΄Ρ€Π°> = <ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ-элСмСнт> | <строка>, Π³Π΄Π΅  = easy | Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π² использовании | Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ…ΠΎΠ΄Π° | Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ установки | кубичСская-Π‘Π΅Π·ΡŒΠ΅ ([0,1]>, <число>, [0,1]>, <число>) <функция-синхронизация-шага> = Π½Π°Ρ‡Π°Π»ΠΎ-шага | шаг-ΠΊΠΎΠ½Π΅Ρ† | шаги (<Ρ†Π΅Π»ΠΎΠ΅ число> [, <позиция-шага>]?), Π³Π΄Π΅ <позиция-шага> = Π½Π°Ρ‡Π°Π»ΠΎ скачка | ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ° | ΠΏΡ€Ρ‹ΠΆΠΎΠΊ-Π½Π΅Ρ‚ | ΠΏΡ€Ρ‹ΠΆΠΎΠΊ-ΠΎΠ±Π° | Π½Π°Ρ‡Π°Π»ΠΎ | ΠΊΠΎΠ½Π΅Ρ†  

Cylon Eye

  
ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΉ
 . polling_message {
  Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
  ΠΏΠ»Ρ‹Ρ‚ΡŒ Π½Π°Π»Π΅Π²ΠΎ;
  ΠΌΠ°Ρ€ΠΆΠ°-ΠΏΡ€Π°Π²ΠΎ: 2%;
}

.view_port {
  Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ;
  высота: 25 пиксСлСй;
  ΡˆΠΈΡ€ΠΈΠ½Π°: 100%;
  ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅: скрыто;
}

.cylon_eye {
  Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π°: красный;
  background-image: linear-gradient (Π²ΠΏΡ€Π°Π²ΠΎ,
      rgba (0, 0, 0, .9) 25%,
      rgba (0, 0, 0, .1) 50%,
      rgba (0, 0, 0, 0,9) 75%);
  Ρ†Π²Π΅Ρ‚ Π±Π΅Π»Ρ‹ΠΉ;
  высота: 100%;
  ΡˆΠΈΡ€ΠΈΠ½Π°: 20%;

  -webkit-animation: 4 сСкунды Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ 0 бСсконСчный Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ move_eye;
          анимация: 4 с Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅ 0 с бСсконСчныС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ move_eye;
}

@ -webkit-keyframes move_eye {from {margin-left: -20%; } ΠΊ {ΠΌΠ°Ρ€ΠΆΠ°-слСва: 100%; }}
        @keyframes move_eye {from {margin-left: -20%; } Π½Π° {ΠΌΠ°Ρ€ΠΆΠ°-слСва: 100%; }}
  

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ см. Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ ИспользованиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ Quantum CSS

  • Π’ Gecko Π΅ΡΡ‚ΡŒ ошибка, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π°Π½ΠΈΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π·Π°ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΉ элСмСнт Π½Π° экранС, Π½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, Gecko Π½Π΅ пСрСрисовываСтся Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Windows (ошибка 1383239). Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ исправлСно Π² Π½ΠΎΠ²ΠΎΠΌ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠΌ Π΄Π²ΠΈΠΆΠΊΠ΅ CSS Firefox (Ρ‚Π°ΠΊΠΆΠ΅ извСстном ΠΊΠ°ΠΊ Quantum CSS ΠΈΠ»ΠΈ Stylo, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ планируСтся Π²Ρ‹ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π² Firefox 57).
  • Другая ошибка Gecko ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ элСмСнты
    Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° open , Ссли для Π½ΠΈΡ… Π°ΠΊΡ‚ΠΈΠ²Π½Π° анимация (ошибка 1382124).Quantum CSS исправляСт это.
  • Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ошибка ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ с использованиСм em-Π΅Π΄ΠΈΠ½ΠΈΡ† Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° ΡˆΡ€ΠΈΡ„Ρ‚Π° Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ элСмСнтС Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ (ошибка 1254424). Quantum CSS исправляСт это.

анимация | 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-time-function : устанавливаСт прСдустановлСнныС ΠΊΡ€ΠΈΠ²Ρ‹Π΅ ускорСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ линСйная .
  • animation-delay : врСмя ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ элСмСнта ΠΈ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (классныС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹).
  • animation-direction : устанавливаСт Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ послС Ρ†ΠΈΠΊΠ»Π°. Π•Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ сбрасываСтся Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅.
  • animation-iteration-count : количСство Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° анимация.
  • animation-fill-mode : устанавливаСт, ΠΊΠ°ΠΊΠΈΠ΅ значСния ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π΄ΠΎ / послС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
    НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ послСднСС состояниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Π½Π° экранС, ΠΈΠ»ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π»ΠΎΡΡŒ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° анимация Π½Π°Ρ‡Π°Π»Π°ΡΡŒ.
  • animation-play-state : ΠΏΡ€ΠΈΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ / воспроизвСсти Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ.

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

  @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
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
animation-fill-mode Π²ΠΏΠ΅Ρ€Π΅Π΄, Π½Π°Π·Π°Π΄, ΠΎΠ±Π°, Π½Π΅Ρ‚
animation-direction normal, Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ
animation-play-state paused, running, running , Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

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

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

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

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

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

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

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

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

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

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

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

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

ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ПК
905
Chrome Firefox IE Edge Safari
4 * 5 * 10 12 ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ
Android Chrome Android Firefox Android iOS Safari
88 85 4 * 6.0-6,1 *

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

Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² CSS3

Ѐункция Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS3 позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠ°Π΄Ρ€Π°ΠΌ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS3

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ Π³Π»Π°Π²Π΅ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°Ρ‚ΡŒ простыС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ анимация свойства ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ значСния ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² CSS3. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ CSS3 Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…ΠΎΠ΄ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Анимация CSS3 Π΄Π΅Π»Π°Π΅Ρ‚ шаг Π²ΠΏΠ΅Ρ€Π΅Π΄ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° основС ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², которая позволяСт Π²Π°ΠΌ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ измСнСния Π² свойствах CSS с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² Π²ΠΈΠ΄Π΅ Π½Π°Π±ΠΎΡ€Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„Π»ΡΡˆ-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ - это двухэтапный процСсс, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅:

  • ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом создания CSS-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ являСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΈ присвоСниС ΠΈΠΌΠ΅Π½ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ объявлСния ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ².
  • Π’Ρ‚ΠΎΡ€ΠΎΠΉ шаг - ссылка Π½Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ с использованиСм свойства animation-name , Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ animation-duration ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ для управлСния ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Однако Π½Π΅Ρ‚ нСобходимости ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΈΡ… ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ…. Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ

ΠΏΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΠΈ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS3.

  .box {
    ΡˆΠΈΡ€ΠΈΠ½Π°: 50 пиксСлСй;
    высота: 50 пиксСлСй;
    Ρ„ΠΎΠ½: красный;
    ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
    / * Chrome, Safari, Opera * /
    -webkit-имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: moveit;
    -webkit-animation-duration: 2 сСкунды;
    / * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: moveit;
    ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;
}
 
/ * Chrome, Safari, Opera * /
@ -webkit-keyframes moveit {
    ΠΎΡ‚ {left: 0;}
    Π½Π° {left: 50%;}
}
 
/ * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
@keyframes moveit {
    ΠΎΡ‚ {left: 0;}
    Π½Π° {left: 50%;}
}  

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅ Π΄Π²Π° свойства animation-name ΠΈ animation-duration (большС 0), Ρ‡Ρ‚ΠΎΠ±Ρ‹ анимация происходила.Однако всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΡ… значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ ΠΏΡ€Π΅ΠΏΡΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ возникновСнию Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. НС всС свойства CSS ΠΌΠΎΠΆΠ½ΠΎ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, любоС свойство CSS, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ значСния, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ числами, Π΄Π»ΠΈΠ½Π°ΠΌΠΈ, ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ Ρ†Π²Π΅Ρ‚Π°ΠΌΠΈ, ΠΌΠΎΠΆΠ½ΠΎ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.


ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для опрСдСлСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… этапах Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° CSS - @keyframes . Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° для ΠΏΡ€Π°Π²ΠΈΠ»Π° стиля ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° начинаСтся с ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° (% ) ΠΈΠ»ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова ΠΎΡ‚ (Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ 0%) ΠΈΠ»ΠΈ с Π΄ΠΎ (Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ 100%). Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Π³Π΄Π΅ создаСтся ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΊΠ°Π΄Ρ€ Π½Π° протяТСнии Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΎΡ†Π΅Π½Ρ‚Ρ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, 0% прСдставляСт Π½Π°Ρ‡Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, 100% прСдставляСт ΠΊΠΎΠ½Π΅Ρ‡Π½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, 50% прСдставляСт ΡΡ€Π΅Π΄Π½ΡŽΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ 50% ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Π΄Ρ€Π° Π² 2-сСкундной Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΡΡ‚ΡŒΡΡ 1 сСкундС Π² Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

  .box {
    ΡˆΠΈΡ€ΠΈΠ½Π°: 50 пиксСлСй;
    высота: 50 пиксСлСй;
    ΠΌΠ°Ρ€ΠΆΠ°: 100 пиксСлСй;
    Ρ„ΠΎΠ½: красный;
    ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
    слСва: 0;
    / * Chrome, Safari, Opera * /
    -webkit-имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: shakeit;
    -webkit-animation-duration: 2 сСкунды;
    / * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: shakeit;
    ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с;
}
 
/ * Chrome, Safari, Opera * /
@ -webkit-keyframes shakeit {
    12.5% {left: -50px;}
    25% {left: 50px;}
    37,5% {left: -25px;}
    50% {left: 25px;}
    62,5% {left: -10px;}
    75% {left: 10px;}
}
 
/ * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
@keyframes shakeit {
    12,5% {left: -50px;}
    25% {left: 50px;}
    37,5% {left: -25px;}
    50% {left: 25px;}
    62,5% {left: -10px;}
    75% {left: 10px;}
}  

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

ΠŸΡ€ΠΈ создании Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ мноТСство свойств. Однако Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ всС свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ свойствС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄.

Бвойство animation - это сокращСнноС свойство для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ установки всСх ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ порядкС. НапримСр:

  .box {
    ΡˆΠΈΡ€ΠΈΠ½Π°: 50 пиксСлСй;
    высота: 50 пиксСлСй;
    Ρ„ΠΎΠ½: красный;
    ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅: ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅;
    / * Chrome, Safari, Opera * /
    -webkit-animation: repeatit 2s Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ 0s бСсконСчный Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ;
    / * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
    анимация: repeatit 2s Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ 0s бСсконСчный Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ;
}
 
/ * Chrome, Safari, Opera * /
@ -webkit-keyframes repeatit {
    ΠΎΡ‚ {left: 0;}
    Π½Π° {left: 50%;}
}
 
/ * Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ синтаксис * /
@keyframes repeatit {
    ΠΎΡ‚ {left: 0;}
    Π½Π° {left: 50%;}
}  

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Если ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ отсутствуСт ΠΈΠ»ΠΈ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, вмСсто Π½Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для этого свойства. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства animation-duration отсутствуСт, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π²Π½ΠΎ 0.


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

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ прСдставлСн ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ ΠΎΠ±Π·ΠΎΡ€ всСх свойств, связанных с Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ.

Π˜ΠΌΡƒΡ‰Π΅ΡΡ‚Π²ΠΎ ОписаниС
анимация Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ свойство для установки всСх свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ объявлСнии.
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π—Π°Π΄Π°Π΅Ρ‚ имя @keyframes ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΊ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌΡƒ элСмСнту.
ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, сколько сСкунд ΠΈΠ»ΠΈ миллисСкунд трСбуСтся Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.
функция синхронизации Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ анимация Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° i. Π΅. Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ослаблСния.
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° начнСтся анимация.
количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π—Π°Π΄Π°Π΅Ρ‚, сколько Ρ€Π°Π· Ρ†ΠΈΠΊΠ» Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ воспроизвСдСн ΠΏΠ΅Ρ€Π΅Π΄ остановкой.
Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Π΄ΠΎΠ»ΠΆΠ½Π° Π»ΠΈ анимация Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС Π² Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»Π°Ρ….
Ρ€Π΅ΠΆΠΈΠΌ Π·Π°Π»ΠΈΠ²ΠΊΠΈ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, ΠΊΠ°ΠΊ CSS-анимация Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ стили ΠΊ своСй Ρ†Π΅Π»ΠΈ Π΄ΠΎ ΠΈ послС Π΅Π΅ выполнСния.
состояниС воспроизвСдСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° ΠΈΠ»ΠΈ приостановлСна ​​анимация.
@keyframes Π—Π°Π΄Π°Π΅Ρ‚ значСния свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

анимация Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ | Codrops

Бвойство animation-delay опрСдСляСт, ΠΊΠΎΠ³Π΄Π° начнСтся анимация. Π­Ρ‚ΠΎ позволяСт Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя послС примСнСния ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π°Ρ‡Π°Π»ΠΎΡΡŒ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ врСмя Π·Π° Π΄ΠΎ , ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π°.

ΠΠ°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ - Β«0sΒ», Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ анимация Π½Π°Ρ‡Π½Π΅Ρ‚ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π° ΠΊ элСмСнту.ΠŸΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ прСдставляСт собой смСщСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ сущСствуСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (ΠΊΠΎΠ³Π΄Π° анимация примСняСтся ΠΊ элСмСнту Ρ‡Π΅Ρ€Π΅Π· свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ) ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ . ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΠΈ '0s', ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π°, Π½ΠΎ автоматичСски прогрСссируСт Π½Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ анимация Π½Π°Ρ‡Π°Π»Π°ΡΡŒ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ врСмя Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, ΠΈ Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΡƒΠΆΠ΅ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ своСго ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π°. НапримСр, Ссли Π²Ρ‹ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ animation-delay , Ρ€Π°Π²Π½ΠΎΠ΅ Β«-2sΒ», анимация начнСтся ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π°, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΎΠ½Π° Π±Ρ‹Π»Π° Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π·Π° 2 сСкунды Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠ»ΠΈ.

Если ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅ΠΌΠΎΠ΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, значСния бСрутся с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° Π½Π΅ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ , Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми.Когда Π²Ρ‹ прСдоставляСтС список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми, этот список ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сопоставляСтся со списком Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, прСдоставлСнным Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ свойствами, связанными с Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ animation-direction , animation-time-function ΠΈ animation- name свойства, срСди ΠΏΡ€ΠΎΡ‡Π΅Π³ΠΎ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ список Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² этих свойствах рассматриваСтся ΠΊΠ°ΠΊ массив, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² спискС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ свой собствСнный индСкс. Π—Π°Ρ‚Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² спискС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ сопоставляСтся с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ с Ρ‚Π΅ΠΌ ΠΆΠ΅ индСксом Π² спискС, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… свойствах.

НапримСр, Ссли Π²Ρ‹ прСдоставляСтС Π΄Π²Π° значСния animation-delay , Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ опрСдСляСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² спискС ΠΈΠΌΠ΅Π½ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, прСдоставлСнном animation-name , Π° вторая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° опрСдСляСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ .

Бвойство animation-delay ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ указываСтся ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ сокращСнного свойства animation .

ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ синтаксис

  • Бинтаксис:
    Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: <врСмя> # 
  • ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ: 0 с
  • ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΊ: всСм элСмСнтам; ΠΈ :: Π΄ΠΎ ΠΈ :: послС псСвдоэлСмСнтов
  • Анимация: Π½Π΅Ρ‚

ЗначСния

<врСмя>
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ time , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ опрСдСляСт, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ сущСствуСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (ΠΊΠΎΠ³Π΄Π° анимация примСняСтся ΠΊ элСмСнту Ρ‡Π΅Ρ€Π΅Π· эти свойства) ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½Π° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ. Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Β«0 с» (Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ анимация Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π°.

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° - , Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ . Подобно Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ΅ Β«0 с», это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ анимация выполняСтся Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π½ΠΎ автоматичСски прогрСссируСт Π² соотвСтствии с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ анимация Π½Π°Ρ‡ΠΈΠ½Π°Π»Π°ΡΡŒ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ врСмя Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, ΠΈ поэтому каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° начинаСтся Π½Π° ΠΏΠΎΠ»ΠΏΡƒΡ‚ΠΈ. Π΅Π³ΠΎ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ Ρ†ΠΈΠΊΠ» ΡƒΠΆΠ΅. Если ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΊΠ°Π΄Ρ€Ρ‹ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅ΠΌΠΎΠ΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, значСния бСрутся с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π°Ρ‡Π°Π»Π° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π° Π½Π΅ с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ.

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

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ анимация с ΠΈΠΌΠ΅Π½Π΅ΠΌ Β«bounceΒ» задСрТиваСтся Π΄ΠΎ окончания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ «встряхивания».

.element {
    имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: отскок, встряхиваниС;
    ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ: 2 с, 1 с;
    анимация-Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°: 1 с, 0 с;
    функция-врСмя-анимация: линСйная, Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ;
    / * . .. * /
}
                 

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

* ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ прСфикс.

  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ:
  • Π”Π°
  • НСт
  • Частично
  • Polyfill

Бтатистика с caniuse.com

CSS3 Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ

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

CSS3, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ страницы Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ изобраТСниями, Flash-анимациями ΠΈ сцСнариями JAVAS.


CSS3
Анимация


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

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ CSS3, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° @keyframes.

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ @keyframes - созданиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΡΡ‚ΠΈΠ»ΡŒ CSS, ΠΈ анимация постСпСнно измСнится Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ стиля Π² ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… @keyframes.


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

Π¦ΠΈΡ„Ρ€Ρ‹ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ€ вСрсии свойства.

Π‘Ρ€Π°Π·Ρƒ послС Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ -webkit-, -ms- ΠΈΠ»ΠΈ -moz- ago Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ прСфикса Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° вСрсии Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

ε±žζ€§
@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-
анимация 43,0
4,0 -webkit-
10,0 16,0
5,0 -ΠΌΠΎΠ·-
9.0
4.0 -webkit-
30,0
15,0 -webkit-
12,0 -o-



Анимация CSS3

ΠŸΡ€ΠΈ создании Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ @keyframes привяТСт Π΅Π΅ ΠΊ сСлСктору, ΠΈΠ½Π°Ρ‡Π΅ анимация Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ эффСкта.

Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π΄Π²Π° свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS3, привязанных ΠΊ сСлСктору:

  • Он опрСдСляСт имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ
  • ΠŸΡ€ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Если Π²Ρ‹ Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, анимация Π½Π΅ запустится, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 0.


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

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ «Анимация» ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для постСпСнного ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ стиля ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ стилСй, сколько Ρ€Π°Π·.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² установлСнноС врСмя ΠΈΠ»ΠΈ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова Β«ΠΎΡ‚Β» ΠΈ Β«Π΄ΠΎΒ», Ρ‡Ρ‚ΠΎ эквивалСнтно 0% ΠΈ 100%.

0% - Π½Π°Ρ‡Π°Π»ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, анимация Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π½Π° 100%.

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




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

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

Атрибуты описаниС CSS
@keyframes Provisions animation. 3
animation Π‘ΠΎΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠ΅ свойство для всСх свойств Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ свойству animation-play-state. 3
имя-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π—Π°Π΄Π°Π΅Ρ‚ имя Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ @keyframes. 3
animation-duration Provisions анимация трСбуСтся для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ†ΠΈΠΊΠ»Π° Π² сСкундах ΠΈΠ»ΠΈ миллисСкундах. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 0. 3
animation-time-function Заданная ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΊΡ€ΠΈΠ²ΠΎΠΉ.По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - Β«Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΒ». 3
Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Когда начинаСтся заданная анимация. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 0. 3
счСтчик-ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π—Π°Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство воспроизвСдСний Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - 1. 3
animation-direction Π”ΠΎΠ»ΠΆΠ½Ρ‹ Π»ΠΈ полоТСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ". 3
animation-play-state НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π»ΠΈ анимация ΠΈΠ»ΠΈ приостановлСна. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ это Β«Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Β». 3

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π΄Π²ΡƒΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ всС свойства Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ:


Animate SVG with CSS - LogRocket Blog

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°: эта ΡΡ‚Π°Ρ‚ΡŒΡ Π±Ρ‹Π»Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ​​22.01.2021.

Π’Π΅Π±-анимация - это восторг. Они ΡƒΠ»ΡƒΡ‡ΡˆΠ°ΡŽΡ‚ взаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь, Π½Π°ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ ΠΎΠΆΠΈΠ²Π»ΡΡ‚ΡŒ Π²Π΅Π±-сайт.Π•ΡΡ‚ΡŒ нСсколько способов создания Π²Π΅Π±-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ JavaScript, GIF ΠΈ встроСнныС Π²ΠΈΠ΄Π΅ΠΎ.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ CSS для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ SVG?

Но простая комбинация SVG ΠΈ CSS ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΏΠΎ нСскольким ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ. БостоящиС ΠΈΠ· ΠΊΠΎΠ΄Π° вмСсто тысяч ΠΊΠ°Π΄Ρ€ΠΎΠ² растровых ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΠΎΠ½ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ быстроС врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, Ρ‡Π΅ΠΌ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠ΅ GIF-Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сущСствуСт мноТСство простых Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±Π΅Π· нСобходимости Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ»Π°Π³ΠΈΠ½ JavaScript ΠΊ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ страницы вашСго Π²Π΅Π±-сайта.

Для Π½Π°Ρ‡Π°Π»Π°, SVG-Ρ„Π°ΠΉΠ»Ρ‹ основаны Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π°Ρ…, поэтому ΠΎΠ½ΠΈ Π±Π΅Π·ΡƒΠΏΡ€Π΅Ρ‡Π½ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ экрана ΠΈ уровням ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π½Π΅ создавая Ρ€Π΅Π·ΠΊΠΎΠΉ пиксСлизации.

Π—Π°Ρ‡Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ CSS для Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ SVG?

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ: ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ CSS? ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SMIL, стандартной спСцификации SVG-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ? ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π‘ΠœΠ˜Π› ΠΏΠ°Π΄Π°Π΅Ρ‚. Chrome двиТСтся Π² Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΎΡ‚ΠΊΠ°Π·Π° ΠΎΡ‚ SMIL Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ CSS ΠΈ API Π²Π΅Π±-Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ.

Π˜Ρ‚Π°ΠΊ, приступим ΠΊ CSS-анимациям ... Но ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ? Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ эти Π»Π΅Π³ΠΊΠΈΠ΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ!

видСо Пола Райана

ΠžΠ±Ρ‰ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ SVG с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько практичСских ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π²Π°ΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ SVG-Ρ„Π°ΠΉΠ»Ρ‹ Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΉ страницС.

Иконки

АнимированныС SVG-Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ подходят для Π·Π½Π°Ρ‡ΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° микровзаимодСйствия ΠΈ измСнСния состояния. Они Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ‚ΡƒΡ€Π΅. ΠžΠ±Ρ‰ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ использования Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΡƒ, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ мСню ΠΈ воспроизвСдСниС / приостановку Π²ΠΈΠ΄Π΅ΠΎ.

Π˜Π»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ

Π˜Π»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ - Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ распространСнный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ использования. Они ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΊΠ°ΠΊ пустоС состояниС, дСмонстрируя, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ.Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ популярным Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ использования ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ смайлы ΠΈ стикСры. Π•ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΡ€Π°ΡˆΠ°ΡŽΡ‚ Ρ†Π΅Π»Π΅Π²Ρ‹Π΅ страницы, привнося ΠΎΠ±ΡŠΠ΅ΠΌΠ½ΠΎΡΡ‚ΡŒ ΠΈ вСсСльС ΠΏΡ€ΠΈ создании Π±Ρ€Π΅Π½Π΄Π°.

Как ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ SVG ΠΊ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ самому ΠΌΠ΅Π»ΠΊΠΎΠΌΡƒ. ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, это ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ SVG. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ нСприятным Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ чистку, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π² ΡΡƒΠΌΠ°ΡΡˆΠ΅Π΄ΡˆΠ΅Π³ΠΎ ΡƒΡ‡Π΅Π½ΠΎΠ³ΠΎ-Π°Π½ΠΈΠΌΠ°Ρ‚ΠΎΡ€Π°, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ с ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° SVG.

УпроститС ΠΊΠΎΠ΄ SVG

Когда создаСтся SVG, ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто Π½Π΅ Π½ΡƒΠΆΠ΅Π½. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Π΅Π³ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. МнС нравится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ SVGO, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° ΠΈ сохраняСт ΠΏΡƒΡ‚ΠΈ с ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ (это Π²Π°ΠΆΠ½ΠΎ для прСдотвращСния ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с нСсколькими SVG Π½Π° ΠΎΠ΄Π½ΠΎΠΉ страницС). Π­Ρ‚ΠΎ инструмСнт Node.js, ΠΈ Π΅ΡΡ‚ΡŒ нСсколько способов Π΅Π³ΠΎ использования, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠ»Π°Π³ΠΈΠ½ Sketch: SVGO Compressor.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΎΠΊ (ΠΏΡ€ΠΈ нСобходимости)

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ SVG Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° элСмСнты .Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ элСмСнтов SVG. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡƒ элСмСнтов вмСстС, ΠΎΠ±Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΈΡ… Π² ΠΈ Π½Π°Π·ΠΎΠ²ΠΈΡ‚Π΅ ΠΈΡ… классом ΠΈΠ»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ.

РассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ прСобразования ΠΈΠΌΠ΅Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Π² ΠΈΠΌΠ΅Π½Π° классов, Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ ΡΡ‚ΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡƒΡ‚ΠΈ (ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·). Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈΠ»ΠΈ класс для Ρ„ΠΈΠ³ΡƒΡ€Ρ‹, Π²Ρ‹ смоТСтС Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ‚Π°Ρ€Π³Π΅Ρ‚ΠΈΠ½Π³ Π½Π° Π½ΠΈΡ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS. Когда Π²Ρ‹ сохранитС SVG, Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π²ΠΈΠ΄ΠΈΠΌΡ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

ΠžΡΡ‚Π΅Ρ€Π΅Π³Π°ΠΉΡ‚Π΅ΡΡŒ порядка налоТСния (Ссли Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΈΠ³ΡƒΡ€Ρƒ, которая ΠΈΠ΄Π΅Ρ‚ ΠΏΠΎΠ·Π°Π΄ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹)

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

Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ состояниС стиля SVG SVG

ΠΈΠΌΠ΅ΡŽΡ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ прСдставлСния, ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Π½Π° стили CSS, Π½ΠΎ устанавливаСмыС нСпосрСдствСнно Π² SVG. Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ - Π·Π°Π»ΠΈΠ²ΠΊΠ° Ρ†Π²Π΅Ρ‚ΠΎΠΌ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ эти стили установлСны Π² SVG, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ большой вСс для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Как оказалось, любой CSS / Sass, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ установили ΠΈΠ·Π²Π½Π΅, СстСствСнным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ ΡΡ‚ΠΈΠ»ΡŒ SVG Π±Π΅Π· нСобходимости Π² объявлСнии ! Important .

Однако Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ установлСно Π² SVG, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΠΎ врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страницы. Для страницы с ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²ΡΠΏΡ‹ΡˆΠΊΡƒ SVG ΠΏΠ΅Ρ€Π΅Π΄ стилизациСй с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ CSS.

Π― Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ Π²Π°ΠΌ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΈ высоту, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ нСстилизованной Π²ΡΠΏΡ‹ΡˆΠΊΠΈ SVG Π²ΠΎ врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ страницы (Π‘Π°Ρ€Π° Π‘ΡƒΠ΅ΠΉΠ΄Π°Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ здСсь Flash of Unstyled SVG (FOUSVG)).

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ CSS ΠΊ SVG

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Ρƒ вас Π΅ΡΡ‚ΡŒ опрятный SVG, Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ CSS.Когда Π΄Π΅Π»ΠΎ Π΄ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ примСнСния CSS ΠΊ SVG, слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ нСсколько Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ². ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнюю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ стилСй для примСнСния стиля ΠΊ SVG, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡƒ внСшнюю ссылку.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1. Π’ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ SVG Π² HTML (ΠΌΠΎΠΉ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ)

Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ элСмСнт SVG ΠΈ Π΅Π³ΠΎ содСрТимоС Ρ‡Π°ΡΡ‚ΡŒΡŽ Π΄Π΅Ρ€Π΅Π²Π° DOM Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, поэтому Π½Π° Π½ΠΈΡ… влияСт CSS Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΉ Π»ΡŽΠ±ΠΈΠΌΡ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ…Ρ€Π°Π½ΠΈΡ‚ стили ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ.

Π’Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π½ΠΈΠΆΠ΅ сильно ΠΏΠ΅Ρ€Π΅ΠΏΠ»Π΅Ρ‚Π΅Π½Ρ‹.Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Rails, Π΅ΡΡ‚ΡŒ Π΄Ρ€Π°Π³ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΌΠ½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ автоматичСски Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ SVG Π² прСдставлСния. Π˜Ρ‚Π°ΠΊ, Π² своСм ΠΊΠΎΠ΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ просто ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° внСшний SVG, Ρ‚ΠΎΠ³Π΄Π° ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ встроСн ΠΏΡ€ΠΈ компиляции. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ прСимущСством этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ встраиваниС SVG ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π° ΠΎΠ΄ΠΈΠ½ HTTP-запрос мСньшС. Π£Ρ€Π°, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ!

Π‘ΠΌ. Pen
SVG - 1 Π›ΡŽΠΊΠ° Вубиниса (@lukelogrocket)
Π½Π° CodePen.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ CSS Π² SVG Π² Ρ‚Π΅Π³