animation-fill-mode հատկությունը
animation-fill-mode հատկությունը սահմանում է,
թե ինչ դիրքում պետք է կանգնի անիմացիան
ավարտից հետո: Լռելյայն անիմացիան վերադառնում է
նախնական արժեքին, և դա կարող է անգեղեցիկ
երևալ:
Շարահյուսություն
ընտրող {
animation-fill-mode: backwards | forwards | both | none;
}
Արժեքներ
| Արժեք | Նկարագրություն |
|---|---|
none |
Եթե սահմանված է անիմացիայի ուշացում, ապա ուշացման ժամանակահատվածում
տարրը կմնա տեղում, ապա ցատկով կանցնի 0% կադրին:
Անիմացիայի ավարտից հետո տարրը չի մնա այն վիճակում,
որտեղ կանգնեց, այլ կցատկի նախնական վիճակին:
|
backwards |
Ստիպում է տարրին էջի բեռնումից հետո տեղափոխվել 0% կադրին,
նույնիսկ եթե սահմանված է ուշացում
animation-delay,
և մնալ այնտեղ, մինչև անիմացիան չսկսվի:
Անիմացիայի ավարտից հետո տարրը
չի մնա այն վիճակում, որտեղ կանգնեց,
այլ կցատկի նախնական վիճակին:
|
forwards |
Նշում է բրաուզերին, որ անիմացիայի ավարտից հետո տարրը կմնա այն վիճակում, որտեղ կանգնեց: |
both |
Ներառում է backwards և forwards - էջի բեռնումից հետո
տարրը կսահմանվի 0% կադրին, իսկ
անիմացիայի ավարտից հետո տարրը կմնա այնտեղ, որտեղ կանգնեց:
|
Լռելյայն արժեքը՝ none:
Օրինակ . None արժեքը
Այս օրինակում margin-left
սահմանված է 300px արժեքով տարրի համար,
իսկ անիմացիայի առաջին կադրի համար՝ 0px:
Քանի որ չկա ուշացում animation-delay,
տարրը էջի բեռնումից հետո կդառնա
0px, և ոչ թե 300px: Բացի
դրանից, անիմացիան ավարտից հետո կցատկի
նախնական արժեքին:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: none;
animation-delay: 0s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: infinite;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Օրինակ . None արժեքը
Այս օրինակում margin-left
սահմանված է 300px արժեքով տարրի համար,
իսկ անիմացիայի առաջին կադրի համար՝ 0px:
Նաև տարրի համար սահմանված է ուշացում animation-delay
3 վայրկյան, ուստի տարրը
էջի բեռնումից հետո կդառնա 300px,
և ոչ թե 0px, և կկանգնի այնտեղ 3
վայրկյան, այնուհետև ցատկով կանցնի 0px - և անիմացիան կսկսվի այնտեղից:
Բացի դրանից, անիմացիան ավարտից հետո կցատկի
նախնական արժեքին:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: none;
animation-delay: 0s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: infinite;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Օրինակ . Backwards արժեքը
Այս օրինակում margin-left
սահմանված է 300px արժեքով տարրի համար,
իսկ անիմացիայի առաջին կադրի համար՝ 0px:
Նաև տարրի համար սահմանված է animation-fill-mode
backwards արժեքով, ուստի տարրը
էջի բեռնումից հետո կդառնա 0px,
և ոչ թե 300px, ինչպես դա էր animation-fill-mode
none արժեքի դեպքում: Բացի դրանից, անիմացիան
ավարտից հետո կցատկի նախնական
արժեքին:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: backwards;
animation-delay: 0s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: infinite;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Օրինակ . None արժեքը և կրկնությունների քանակը հավասար է 1-ի
Այս օրինակում margin-left
սահմանված է 300px արժեքով տարրի համար,
իսկ անիմացիայի առաջին կադրի համար՝ 0px:
Նաև տարրի համար սահմանված է ուշացում animation-delay
3 վայրկյան, ուստի տարրը
էջի բեռնումից հետո կդառնա 300px,
և ոչ թե 0px, և կկանգնի այնտեղ 3
վայրկյան, այնուհետև ցատկով կանցնի 0px - և անիմացիան կսկսվի այնտեղից:
Քանի որ animation-fill-mode սահմանված է
none արժեքով, ապա անիմացիայի ավարտից հետո
տարրը կվերադառնա նախնական արժեքին:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: none;
animation-delay: 3s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: 1;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Օրինակ . Forwards արժեքը և կրկնությունների քանակը հավասար է 1-ի
Այս օրինակում animation-fill-mode
սահմանված է forwards արժեքով, իսկ
անիմացիայի կրկնությունների քանակը - 1:
Անիմացիայի ավարտից հետո տարրը կմնա
այն դիրքում, որտեղ ավարտվեց անիմացիան,
և չի ցատկի սկզբնակետ:
Բացի դրանից, margin-left սահմանված է
300px արժեքով տարրի համար, իսկ
անիմացիայի առաջին կադրի համար՝ 0px: Նաև
տարրի համար սահմանված է ուշացում animation-delay
3 վայրկյան, ուստի տարրը
էջի բեռնումից հետո կդառնա 300px,
և ոչ թե 0px, և կկանգնի այնտեղ 3
վայրկյան, այնուհետև ցատկով կանցնի 0px - և անիմացիան կսկսվի այնտեղից:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: forwards;
animation-delay: 3s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: 1;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Օրինակ . Both արժեքը և կրկնությունների քանակը հավասար է 1-ի
Այս օրինակում animation-fill-mode
սահմանված է both արժեքով, իսկ անիմացիայի կրկնությունների քանակը - 1:
Էջի բեռնումից հետո տարրը կկանգնի
անիմացիայի առաջին կադրում (0px, և ոչ
300px), իսկ անիմացիայի ավարտից հետո տարրը
կմնա այն դիրքում, որտեղ ավարտվեց
անիմացիան, և չի ցատկի սկզբնակետ:
<div id="elem"></div>
@keyframes move {
from {
margin-left: 0;
}
to {
margin-left: 400px;
}
}
#elem {
margin-left: 300px;
animation-fill-mode: both;
animation-delay: 3s;
animation-duration: 3s;
animation-name: move;
animation-iteration-count: 1;
animation-timing-function: linear;
border: 1px solid black;
width: 50px;
height: 50px;
}
:
Տես նաև
-
animation-nameհատկությունը,
որը սահմանում է անիմացիայի անունը -
animation-durationհատկությունը,
որը սահմանում է անիմացիայի տևողությունը -
animation-delayհատկությունը,
որը սահմանում է ուշացում անիմացիայի կատարումից առաջ -
animation-timing-functionհատկությունը,
որը սահմանում է անիմացիայի կատարման արագությունը -
animation-iteration-countհատկությունը,
որը սահմանում է անիմացիայի կրկնությունների քանակը -
animation-directionհատկությունը,
որը սահմանում է անիմացիայի ուղղությունը -
animation-play-stateհատկությունը,
որը թույլ է տալիս դադարեցնել անիմացիան -
animationհատկությունը,
որը համառոտ տարբերակ է անիմացիաների համար -
@keyframesհրամանը,
որը սահմանում է անիմացիայի հիմնական կադրերը -
transitionսահուն անցումները, որոնք ներկայացնում են անիմացիա տարրի վրա դրվագման դեպքում