CSS - SOMO LA 23: Uelewa Zaidi wa CSS Animation na Transition
Somo hili linakuletea ufahamu wa kina juu ya CSS Transitions na Animations, likifafanua vipengele vyake muhimu, matumizi, na namna ya kutumia properties mbalimbali za animation kwa ufanisi katika kurahisisha muonekano na mtumiaji wa tovuti.
? Utangulizi
CSS Transition na Animation ni mbinu za kuleta mabadiliko ya mtindo (style changes) kwa mpangilio wa wakati, ili kuweka harakati laini au za kuvutia kwenye tovuti. Transitions ni rahisi zaidi, zinatumiwa kwa mabadiliko madogo na ya kawaida, wakati animations zinatoa uwezo mkubwa zaidi wa kuunda miondoko changamano.
? Maudhui ya Somo
✅ 1. CSS Transition - Utangulizi na Vipengele Muhimu
Transition huruhusu mabadiliko ya properties za CSS kutokea kwa taratibu, badala ya mara moja.
Vipengele vya Transition:
| Property | Maelezo | Mfano |
|---|---|---|
transition-property |
Inabainisha sifa (property) zinazobadilika | background-color, transform |
transition-duration |
Muda wa mabadiliko (sekunde/ms) | 0.5s |
transition-timing-function |
Kasi au aina ya mabadiliko (curve) | ease, linear, ease-in |
transition-delay |
Muda wa kuchelewesha kuanza kwa mabadiliko | 0.2s |
Mfano wa transition kamili:
.box {
transition-property: background-color, transform;
transition-duration: 0.5s, 1s;
transition-timing-function: ease-in, ease-out;
transition-delay: 0s, 0.3s;
}
Hii ina maana background-color itabadilika kwa 0.5 sekunde bila kuchelewa, na transform itaanza baada ya 0.3 sekunde na ichukue 1 sekunde.
✅ 2. CSS Animation - Vipengele Muhimu na Ufafanuzi
Animation ni mfululizo wa mabadiliko ya properties za CSS, zikiendeshwa kwa mpangilio maalum wa muda.
Vipengele Muhimu vya Animation:
| Property | Maelezo | Mfano |
|---|---|---|
animation-name |
Jina la animation (@keyframes inayotumika) |
pulse |
animation-duration |
Muda wa mzunguko mmoja wa animation | 2s |
animation-timing-function |
Kasi ya mabadiliko ndani ya mzunguko | ease-in-out, linear |
animation-delay |
Muda wa kuchelewesha kuanza animation | 0.5s |
animation-iteration-count |
Ni mara ngapi animation itarudiwa | infinite, 1 |
animation-direction |
Mwelekeo wa animation (normal, reverse, alternate) |
alternate |
animation-fill-mode |
Jinsi hali ya mwisho ya animation inavyoshughulikiwa | forwards, backwards |
animation-play-state |
Hali ya kuendesha animation (running au paused) |
running |
✅ 3. @keyframes - Misingi ya Animation
@keyframes hutumika kufafanua mabadiliko yanayotokea wakati wa animation, kwa kugawanya mzunguko kuwa pointi za asilimia.
@keyframes pulse {
0% {
transform: scale(1);
}
50% {
transform: scale(1.1);
}
100% {
transform: scale(1);
}
}
✅ 4. Mfano wa Animation Kamili
.box {
width: 100px;
height: 100px;
background-color: teal;
animation-name: pulse;
animation-duration: 2s;
animation-iteration-count: infinite;
animation-direction: alternate;
animation-timing-function: ease-in-out;
animation-fill-mode: forwards;
}
Hii inafanya .box ikue kidogo na kurudi ukubwa wa kawaida kwa mzunguko unaorudiwa bila kikomo.
✅ 5. Transition na Animation Kwa Pamoja
.button {
background-color: blue;
color: white;
padding: 15px 30px;
border: none;
transition: background-color 0.3s ease;
}
.button:hover {
background-color: orange;
}
@keyframes shake {
0%, 100% { transform: translateX(0); }
25% { transform: translateX(-5px); }
75% { transform: translateX(5px); }
}
.button:active {
animation: shake 0.5s;
}
-
Transition hutumika kubadilisha rangi kwa hover
-
Animation hutumika kutoa athari ya kutetemeka wakati button inapobonyezwa
✅ 6. Ufafanuzi wa Vipengele Muhimu vya Animation
-
animation-name– jina la mfululizo wa hatua (@keyframes) -
animation-duration– muda wa mzunguko mmoja (sekunde au ms) -
animation-timing-function– kasi/mwendo wa animation ndani ya mzunguko (ease,linear,steps(),cubic-bezier()) -
animation-delay– muda wa kuchelewesha kuanza kwa animation -
animation-iteration-count– idadi ya kurudiwa (auinfinitekwa mara zisizoisha) -
animation-direction– mwelekeo wa animation (mfano,alternateinaacha animation irudi nyuma) -
animation-fill-mode– jinsi hali ya mwisho au mwanzo ya animation inavyoshughulikiwa (forwards,backwards,both) -
animation-play-state– hali ya kuendesha animation (running,paused)
✅ Hitimisho
Kwa kuelewa na kutumia properties hizi vizuri, unaweza kubuni miondoko ya kuvutia na yenye ubora wa hali ya juu kwa tovuti zako, ukiboresha uzoefu wa mtumiaji na kuongeza mvuto wa muonekano.
? Somo Linalofuata: SOMO LA 24 - CSS Positioning
Tutajifunza aina za position na jinsi ya kuzipanga elementi kwa kutumia static, relative, absolute, fixed, na sticky.
? Maswali ya Kujitathmini
-
Property gani inaelezea jina la mfululizo wa hatua za animation?
a)animation-duration
b)animation-name
c)animation-fill-mode
d)animation-delay -
animation-iteration-count: infinite;ina maana gani?
a) Animation haitaanza
b) Animation itarudia mzunguko bila mwisho
c) Animation itaacha mara moja
d) Animation inachezewa polepole -
Nini hufanyika kama
animation-fill-modeikoforwards?
a) Animation inaanza polepole
b) Hali ya mwisho ya animation inaendelea kuonekana
c) Animation inarudi mwanzo
d) Animation haina athari -
transition-delayhutumika kwa nini?
a) Kuchelewesha kuanza kwa transition
b) Kuongeza kasi ya transition
c) Kubadilisha rangi
d) Kuficha elementi -
Nini maana ya
animation-direction: alternate;?
a) Animation inaenda kwa mwelekeo mmoja tu
b) Animation inaenda na kurudi kwa mzunguko wa mabadiliko
c) Animation haitumiki
d) Animation huanza tena baada ya kuisha
Jiunge nasi WhatsApp kupata update zetu
Umeionaje Makala hii.. ?
Share On:
👉1 Kitau cha Fiqh 👉2 Dua za Mitume na Manabii 👉3 Madrasa kiganjani 👉4 Simulizi za Hadithi Audio 👉5 Bongolite - Game zone - Play free game 👉6 Sira ya Mtume Muhammad (s.a.w)
Post zinazofanana:
CSS - SOMO LA 29: CSS z-index na Stacking Context
Katika somo hili tutajifunza kuhusu z-index, ambayo hutumika kudhibiti ni elementi ipi ionekane juu au chini wakati kuna elementi nyingi zinazofunika sehemu moja. Pia tutajifunza kuhusu stacking context, yaani jinsi vivinjari vinavyopanga
Soma Zaidi...Drone: Nyuki Dume na Majukumu Yake
Simulizi hii inaelezea maisha ya nyuki dume, zinazojulikana kama drone. Inafafanua majukumu yao, maisha yao ya kila siku ndani ya kiwanda cha nyuki, na hatima yao baada ya kufanikisha kuzaliana na kifalme cha nyuki. Simulizi pia inaangazia tofauti zao na nyuki wa kike, na umuhimu wao katika uzazi wa kifalme.
Soma Zaidi...CSS - somo la 6: Kuweka Background kwenye HTML kwa kutumia CSS
Katika somo hili, utajifunza jinsi ya kudhibiti muonekano wa sehemu ya nyuma (background) ya HTML element kwa kutumia CSS. Utaweza kuongeza rangi, picha, kuweka picha zisirudiwarudiwe, na hata kusogeza picha kwenye maeneo tofauti ya ukurasa.
Soma Zaidi...CSS - SOMO LA 19: Pseudo-classes na Pseudo-elements
Katika somo hili, utajifunza kuhusu pseudo-classes kama :hover, :first-child, na :last-child, pamoja na pseudo-elements kama ::before, ::after, na ::selection. Hizi husaidia kubadili au kuongeza mitindo maalum kulingana na hali ya elementi au sehemu maalum ya elementi.
Soma Zaidi...CSS - somo la 2: Jinsi ya ku weka code za css kwenye HTML
katika somo hili utajifunza jinsi ya ku install css kwenye ukurasa wa html
Soma Zaidi...CSS - SOMO LA 30: CSS Functions – calc(), clamp(), var(), min(), max() na Custom Functions
Katika somo hili, tutajifunza kuhusu CSS functions muhimu zinazotumika kufanya mahesabu, kuweka vipimo vya kisasa vinavyobadilika kulingana na hali ya kifaa, na kutumia variables. Tutazingatia functions kama: calc(), clamp(), var(), min(), max(), na mwishoni tutajifunza jinsi ya kutengeneza custom function kwa kutumia variables.
Soma Zaidi...