CSS - SOMO LA 16: Flexbox Basics
Katika somo hili, utajifunza msingi wa mfumo wa Flexbox unaotumika kupanga elementi kwa usahihi ndani ya kontena. Utajifunza kuhusu display: flex;, pamoja na properties muhimu kama justify-content, align-items, flex-direction, na gap.
? Utangulizi
Flexbox ni mfumo wa kisasa wa kupanga layout za CSS. Lengo lake ni kusaidia kupanga elementi kwa urahisi kwa mwelekeo wa mstari (row) au safu (column), na kuruhusu elementi zijiweke zenyewe kwa kutumia nafasi inayopatikana.
Tofauti na float au inline-block, Flexbox huwezesha muundo wa layout uliorahisishwa, unaobadilika bila kuvuruga mpangilio.
? Maudhui ya Somo
✅ 1. display: flex
-
Hii ndiyo hatua ya kwanza. Elementi ya mzazi (container) inawekwa kama flex container.
-
Elementi za ndani huwa flex items.
.container {
display: flex;
}
? Bila display: flex;, properties nyingine za Flexbox hazitafanya kazi.
✅ 2. flex-direction
-
Inaelekeza mwelekeo wa elementi za ndani (row au column):
.container {
flex-direction: row; /* default */
}
Aina za flex-direction:
-
row→ kutoka kushoto kwenda kulia -
row-reverse→ kutoka kulia kwenda kushoto -
column→ kutoka juu kwenda chini -
column-reverse→ kutoka chini kwenda juu
✅ 3. justify-content
-
Hutumika kupanga nafasi kwa usawa kwenye mstari wa kuu (main axis).
.container {
justify-content: center;
}
Options:
-
flex-start→ zinaanzia mwanzo -
center→ zinawekwa katikati -
flex-end→ zinaishia mwisho -
space-between→ nafasi kati yao -
space-around→ nafasi pande zote -
space-evenly→ nafasi sawa kati yao na pembeni
✅ 4. align-items
-
Hupanga nafasi ya elementi kwa msingi wa mwelekeo wa pili (cross axis).
.container {
align-items: center;
}
Options:
-
stretch(default) -
center -
flex-start -
flex-end -
baseline
✅ 5. gap
-
Huongeza nafasi kati ya elementi.
.container {
gap: 20px;
}
? Unaweza pia kutumia row-gap na column-gap.
✅ 6. Mfano Kamili
<div class="container">
<div class="item">A</div>
<div class="item">B</div>
<div class="item">C</div>
</div>
.container {
display: flex;
flex-direction: row;
justify-content: space-around;
align-items: center;
gap: 10px;
}
.item {
background: lightblue;
padding: 20px;
font-weight: bold;
}
✅ Hitimisho
Flexbox ni suluhisho rahisi na lenye nguvu kwa kupanga layout. Kwa kutumia display: flex pamoja na justify-content, align-items, flex-direction, na gap, unaweza kuunda layout inayobadilika kwa urahisi bila kutumia float au positioning tata.
? Somo Linalofuata: SOMO LA 17 - Box Model katika CSS
? Maswali ya Kujitathmini
-
Ili kuweka elementi katikati kwa usawa kwenye Flexbox, utatumia:
a)align-items: start
b)justify-content: center
c)flex-direction: column
d)position: absolute -
flex-direction: column;ina maana gani?
a) Elementi hujipanga kwenye mstari mlalo
b) Elementi hujipanga kuanzia mwisho
c) Elementi hujipanga juu kwenda chini
d) Elementi hujificha -
Tofauti ya
justify-contentnaalign-itemsni nini?
a) Hakuna tofauti
b) Moja hupanga cross axis na nyingine main axis
c) Zote hupanga kwa mwelekeo mmoja
d) Moja ni ya background -
gap: 20px;inafanya nini?
a) Inaongeza padding
b) Inatoa margin ya nje
c) Inaongeza nafasi kati ya flex items
d) Inatoa border -
Ili elementi zianze kuonekana kutoka kulia kwenda kushoto, utatumia:
a)flex-direction: column
b)flex-direction: row-reverse
c)justify-content: flex-start
d)align-items: flex-end
kwa muundo sahihi)?
Umeionaje Makala hii.. ?
Share On:
👉1 Kitabu cha Afya 👉2 Sira ya Mtume Muhammad (s.a.w) 👉3 kitabu cha Simulizi 👉4 Kitau cha Fiqh 👉5 Bongolite - Game zone - Play free game 👉6 ai web app
Post zinazofanana:
CSS - SOMO LA 22: CSS Transition na Animation
Katika somo hili, tutajifunza jinsi ya kuleta miondoko na harakati kwenye tovuti kwa kutumia CSS Transitions na Animations. Hii itasaidia kuboresha muonekano na matumizi ya tovuti.
Soma Zaidi...CSS - SOMO LA 17: Flexbox Advanced
Katika somo hili, utajifunza vipengele vya juu zaidi vya Flexbox: flex-wrap, flex-grow, flex-shrink, na flex-basis. Pia tutajifunza jinsi ya kujenga muundo wa safu (rows) na nguzo (columns) kwa kutumia Flexbox layout.
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 32: Custom Fonts na @font-face
Katika somo hili tutajifunza jinsi ya kutumia fonts za kipekee (custom fonts) katika tovuti kwa kutumia njia mbili kuu: Google Fonts na @font-face. Tutajifunza pia sababu za kutumia fonts maalum, faida zake, na jinsi ya kuzidhibiti kwenye CSS.
Soma Zaidi...CSS - SOMO LA 33: CSS Frameworks
Katika somo hili tutajifunza kuhusu CSS frameworks mbalimbali zinazosaidia kuharakisha uundaji wa mitindo kwenye tovuti. Tutazungumzia frameworks maarufu kama W3.CSS, Bootstrap, Google Fonts, na nyinginezo, faida, matumizi, na tofauti zao.
Soma Zaidi...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.
Soma Zaidi...