CSS - SOMO LA 20: Media Queries na Responsive Design

Katika somo hili, utajifunza jinsi ya kutumia media queries kwa ajili ya kutengeneza tovuti zinazojibadilisha kulingana na ukubwa wa skrini. Tutazungumzia @media rules, breakpoints, na dhana ya mobile-first design.

📘 Utangulizi

Kwa sababu watu hutumia vifaa vya ukubwa tofauti kama simu, tablet, na kompyuta, tovuti inapaswa kuonekana vizuri kwenye kila kifaa. Hapa ndipo Responsive Design inapohusika, na nyenzo kuu ya kufanikisha hili ni CSS Media Queries.


📚 Maudhui ya Somo


✅ 1. @media Rules

@media (max-width: 768px) {
  body {
    background-color: lightblue;
  }
}

💡 Maana yake: ikiwa upana wa skrini ni mdogo au sawa na 768px, badili rangi ya nyuma kuwa lightblue.


✅ 2. Breakpoints

Breakpoints ni pointi maalum (kwa kipimo cha px) ambapo layout inabadilika ili kufaa kifaa tofauti.

🔸 Mfano wa Breakpoints ya kawaida:

Kifaa Upana (px)
Simu ndogo max-width: 480px
Simu ya kawaida max-width: 768px
Tablet max-width: 1024px
Kompyuta ndogo max-width: 1280px
Kompyuta kubwa zaidi ya 1280px
@media (max-width: 480px) {
  .menu {
    display: none;
  }
}

@media (min-width: 769px) {
  .menu {
    display: block;
  }
}

✅ 3. Mobile-First Design

Mobile-first ni mbinu ya kwanza kubuni kwa simu, kisha kupanua kwa vifaa vikubwa.

/* Styles za simu (default) */
.container {
  padding: 10px;
  font-size: 14px;
}

/* Styles kwa tablet na zaidi */
@media (min-width: 768px) {
  .container {
    padding: 30px;
    font-size: 18px;
  }
}

💡 Hii inaipa simu kipaumbele badala ya kuanza na desktop.


✅ 4. Mfano Kamili

<div class="box">Karibu!</div>
.box {
  background: green;
  color: white;
  padding: 20px;
  text-align: center;
}

/* Kwa vifaa vidogo */
@media (max-width: 600px) {
  .box {
    background: orange;
  }
}

/* Kwa vifaa vikubwa */
@media (min-width: 1024px) {
  .box {
    background: navy;
  }
}

✅ Hitimisho

Media queries ni njia bora ya kufanya tovuti yako ionekane vizuri kwenye kila kifaa. Kwa kutumia @media, unaweza kudhibiti layout kulingana na ukubwa wa skrini na kuweka uzoefu mzuri kwa watumiaji wa simu, tablet, au desktop.


🔜 Somo Linalofuata: SOMO LA 21 - Transition na Animation

Tutajifunza jinsi ya kuleta miondoko na harakati kwenye tovuti kwa kutumia transition, transform, na animation.


🧠 Maswali ya Kujitathmini

  1. @media (max-width: 768px) inamaanisha nini?
    a) Styles zitatumika ikiwa skrini ni kubwa zaidi ya 768px
    b) Styles zitatumika ikiwa skrini ni ndogo au sawa na 768px
    c) Styles zitatumika kwa kompyuta pekee
    d) Styles hazitafanya kazi

  2. Nini maana ya breakpoint?
    a) Kifaa kilichovunjika
    b) Muda wa kuvunja layout
    c) Kipimo cha skrini kinachobadili layout
    d) Kifaa kinapopotea mtandaoni

  3. Mobile-first design huanza na?
    a) Kompyuta
    b) Tablet
    c) Simu
    d) Smart TV

  4. Ili style ifanye kazi tu kwenye kompyuta yenye skrini kubwa zaidi ya 1024px, utatumia?
    a) @media (max-width: 1024px)
    b) @media (min-width: 1024px)
    c) @media screen
    d) @media desktop-only

  5. gap, flex, ::after ni sehemu za nini?
    a) Media queries
    b) HTML
    c) CSS Layout tools
    d) JavaScript

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 1970-01-01 03:33:45 Topic: CSS Main: ICT File: Download PDF Views 185

Share On:

Facebook WhatsApp
Sponsored links
👉1 Bongolite - Game zone - Play free game    👉2 Dua za Mitume na Manabii    👉3 Simulizi za Hadithi Audio    👉4 kitabu cha Simulizi    👉5 Kitau cha Fiqh    👉6 Sira ya Mtume Muhammad (s.a.w)   

Post zinazofanana:

CSS - SOMO LA 7: Kutumia Fonti (Fonts) kwenye CSS

Katika somo hili utajifunza jinsi ya kudhibiti mwonekano wa maandishi kwa kutumia fonti kwenye CSS. Utajifunza jinsi ya kubadilisha aina ya fonti, ukubwa, mtindo, unene, na mpangilio wa maandishi ili yaweze kuonekana kwa mvuto na usomaji bora.

Soma Zaidi...
CSS - SOMO LA 8: Upambaji wa Maandishi (Text Styling)

Katika somo hili, utajifunza mbinu mbalimbali za kubadilisha muonekano wa maandishi kwa kutumia CSS, kama vile kupamba maandishi kwa mistari, kivuli, nafasi kati ya herufi, na mpangilio wa maneno.

Soma Zaidi...
CSS - SOMO LA 9: Margin na Padding

Katika somo hili utajifunza tofauti kati ya margin na padding, kazi ya kila moja, jinsi ya kuzipima, na jinsi zinavyotumika kudhibiti nafasi ndani na nje ya elementi kwenye ukurasa wa HTML.

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 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...
CSS - SOMO LA 24: CSS Variables (Custom Properties)

Katika somo hili, tutajifunza kuhusu CSS Variables, au Custom Properties. Utajifunza jinsi ya kuunda, kuitumia, na faida za kutumia variables katika CSS ili kuweka msimamizi mzuri wa rangi, ukubwa, na mitindo mingine ya kurudia-rudia.

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...
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...
CSS - SOMO LA 26: CSS Specificity (Kipaumbele cha Styles)

Katika somo hili, tutajifunza kuhusu CSS Specificity — yaani mfumo wa kipaumbele unaotumiwa na kivinjari kuchagua ni mtindo (style) upi utumike iwapo kuna migongano kati ya selectors mbalimbali. Utaelewa jinsi ya kupanga selectors zako vizuri ili kuzuia matatizo ya mitindo kutofanya kazi kama ulivyotarajia.

Soma Zaidi...
CSS - SOMO LA 12: Width, Height, Max/Min Width na Overflow

Katika somo hili, utajifunza jinsi ya kudhibiti upana (width) na urefu (height) wa elementi katika CSS. Pia utaelewa tofauti kati ya max-width, min-width, na jinsi overflow inavyodhibiti tabia ya content inayoizidi element.

Soma Zaidi...