CSS آنیمیشن

CSS آنیمیشن

CSS zai iya gudanar da samarwa na elemen na HTML daga yawa na samarwa na JavaScript ko Flash!

CSS

a cikin babban ita, za a iya gudanar da samarwa na wannan:

  • @keyframes
  • animation-name
  • animation-duration
  • animation-delay
  • animation-iteration-count
  • animation-direction
  • animation-timing-function
  • animation-fill-mode
  • animation

kaɗanin da ake gudanarwa na browser

kan tabbin da ke gudanarwa, za a iya gudanar da samarwa na kaiyaki a kan kaiyaki na farko na browser na ake gudanarwa.

属性 Chrome IE Firefox Safari Opera
@keyframes 43.0 10.0 16.0 9.0 30.0
animation-name 43.0 10.0 16.0 9.0 30.0
animation-duration 43.0 10.0 16.0 9.0 30.0
animation-delay 43.0 10.0 16.0 9.0 30.0
animation-iteration-count 43.0 10.0 16.0 9.0 30.0
animation-direction 43.0 10.0 16.0 9.0 30.0
animation-timing-function 43.0 10.0 16.0 9.0 30.0
animation-fill-mode 43.0 10.0 16.0 9.0 30.0
animation 43.0 10.0 16.0 9.0 30.0

kuma shi ne CSS kaiyaki?

kaiyaki zai gudanar da elemen zai kaiyaki da yawa na samarwa daga samarwa na yanzu zuwa samarwa na tsaki.

za a iya sake shi da yawa na samarwa na CSS.

don amfani da kaiyaki na CSS, za a iya gudanar da kaiyaki na wakilci na wakilci a kan wakilci na wakilci a kan wakilci na wakilci.

keyframes zai gudanar da samarwa na elemen a kan wakilci na wakilci a kan wakilci na wakilci.

kalaman @keyframes

idan ake amfani da @keyframes za a iya gudanar da samarwa na CSS da yawa na samarwa a kan shaidar da ake gudanarwa, kaiyaki zai kaiyaki da yawa na samarwa daga samarwa na yanzu zuwa samarwa na tsaki.

don amfani da kaiyaki, za a iya gudanar da kaiyaki a kan elemen.

kaɗanin da ake gudanarwa zai bincike "example" da kaiyaki a <div> elemen. Kaiyaki zai kaiyaki 4 dautu, kuma zai sake shi da yawa na samarwa na <div> elemen da yawa na alama da yawa na red zuwa yellow:

实例

/* koodu kananan ya a hukuma kaɗanin */
@keyframes example {
  from {background-color: red;}
  to {background-color: yellow;}
}
/* za a amfani da kaiyaki da yawa na samarwa ga elemen wannan */
div {
  width: 100px;
  height: 100px;
  background-color: red;
  animation-name: example;
  animation-duration: 4s;
}

亲自试一试

ka amanar:animation-duration hanyar amfani da shafin za a iya gudanar da lokacin da ake kammala kaiyaki. Idan ba a sife shi ba animation-duration hanyar amfani da shafin, kaiyaki zai kaiyaki saboda kuma alama da ake amfani da ita ita ce 0s (0 dautu).

a cikin shaidar da ake gudanarwa, ta hanyar amfani da kalaman 'from' da 'to' (wanda ke wakiltar 0% (kaiyaki) da 100% (kammala)), ake gudanar da lokacin da ake sake shi na samarwa.

za a iya amfani da kwararren bayanin. Amfani da kwararren bayanin, za a iya kara da kuma kaiyaki da yawa na waje da waje don sake shi da yawa na samarwa.

kaɗanin da ake gudanarwa a kusan 25%, 50% da 100% na kammala kaiyaki, za a sake shi da alama da zai kaiyaki da yawa na <div> elemen:

实例

/* koodu kananan ya a hukuma kaɗanin */
@keyframes example {
  0%   {background-color: red;}
  25%  {background-color: yellow;}
  50%  {background-color: blue;}
  100% {background-color: green;}
}
/* elemenin kananan ya a hukuma kaɗanin */
div {
  width: 100px;
  height: 100px;
  background-color: red;
  animation-name: example;
  animation-duration: 4s;
}

亲自试一试

kaɗanin kananan ya a hukuma kuduwa 25%, kuduwa 50% ko kuduwa 100% domin yin kuduwa launin abinci da <div> elemenin yin kuduwa sha'awa:

实例

/* koodu kananan ya a hukuma kaɗanin */
@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;}
}
/* elemenin kananan ya a hukuma kaɗanin */
div {
  width: 100px;
  height: 100px;
  position: relative;
  background-color: red;
  animation-name: example;
  animation-duration: 4s;
}

亲自试一试

kuduwa shirin kaɗanin baya kuduwa

animation-delay 属性 kananan ya hukuma domin yin kuduwa shirin kaɗanin baya kuduwa.

kaɗanin kananan ya a baya kuduwa 2 daga baya kuduwa:

实例

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

亲自试一试

Iyaɗa a hukuma domin yin kuduwa shirin kaɗanin yau. Bila hukuma, kaɗanin ya kira kuduwa, dake hukuma N daga baya.

kaɗanin kananan ya a baya kuduwa domin yin kira kuduwa, dake hukuma kuduwa 2 daga baya:

实例

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

亲自试一试

Hukuma domin yin kuduwa shirin kaɗanin yau

animation-iteration-count 属性 kananan ya hukuma domin yin kuduwa shirin kaɗanin yau.

kaɗanin kananan ya a hukuma kuduwa 3 daga baya kuduwa:

实例

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

亲自试一试

kaɗanin kananan ya a hukuma "infinite" domin yin kuduwa shirin kaɗanin shi a gaba gaba:

实例

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

亲自试一试

kuduwa ko kuduwa shirin kaɗanin

animation-direction 属性 kananan ya hukuma domin yin kira kuduwa, kuduwa ko kuduwa shirin kaɗanin

animation-direction 属性可接受以下值:

  • normal - kaɗanin ya kira kuduwa (kuduwa). Iyaɗa girmama
  • reverse - kaɗanin ya kira kuduwa (kuduwa)
  • alternate - kaɗanin ya kira kuduwa kuduwa, kuma dake hukuma kuduwa
  • alternate-reverse - kaɗanin ya kira kuduwa kuduwa, kuma dake hukuma kuduwa

kaɗanin kananan ya a hukuma kuduwa (kuduwa):

实例

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

亲自试一试

kaɗanin kananan ya a hukuma "alternate" domin yin kira kuduwa, kuma dake hukuma kuduwa:

实例

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

亲自试一试

kaɗanin kananan ya a hukuma "alternate-reverse" domin yin kira kuduwa, kuma dake hukuma kuduwa:

实例

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 属性规定动画的速度曲线。

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 属性能够覆盖这种行为。

在不播放动画时(在开始之前,结束之后,或两者都结束时),animation-fill-mode سايتشa سايتشa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سايتچa سa

animation-fill-mode سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتчa

  • none - سايتشa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سايتчa سa
  • forwards - سايتشايتa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتشa سايتчa
  • backwards - سايتشايتا سايتشايتa سايتشايتa سايتشايتa سايتشايتa سايتشايتa سايتشايتa سايتشايتa سايتشa
  • both - سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتa

تسايتشايتا <div> لى رى سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشايتا سايتشаيتا سايتشаيتا سايتشايتا سايتشايتa

实例

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 动画属性:

属性 tashiya
@keyframes tashiya 动画模式。
animation 设置所有动画属性的简写属性。
animation-delay tashiya 动画开始的延迟。
animation-direction 定动画是向前播放、向后播放还是交替播放。
animation-duration tashiya 动画完成一个周期应花费的时间。
animation-fill-mode tashiya 元素在不播放动画时的样式(在开始前、结束后,或两者同时)。
animation-iteration-count tashiya 动画应播放的次数。
animation-name tashiya @keyframes 动画的名称。
animation-play-state تعیین می‌کند که انیمیشن اجرا شود یا متوقف شود.
animation-timing-function سرعت انیمیشن را تعیین می‌کند.