picha

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.

📘 Utangulizi

Katika CSS, wakati ambapo selector zaidi ya moja inalenga elementi ile ile, kivinjari huchagua mtindo mmoja tu wa kutumia. Ili kufanya hivyo, hutegemea mfumo unaoitwa specificity — ambao ni mfumo wa alama unaoamua ni mtindo gani una nguvu zaidi.

Mfano: Kama selector #header na .title zote zinaweka rangi ya maandishi tofauti kwenye <h1 class="title" id="header">, basi kivinjari kitaweka ile yenye specificity kubwa zaidi.


 


✅ 1. Uelewa wa Specificity

Specificity ni kipimo cha "nguvu" ya CSS selector. Selector yenye nguvu zaidi (specificity kubwa) hushinda zingine zinazolenga elementi hiyo hiyo.

CSS Specificity huhesabiwa kwa mfumo wa pointi kwa aina mbalimbali za selectors.


✅ 2. Viwango vya Specificity

Selector Pointi/Uzito wa Specificity
Inline styles (style="") 1000
ID selectors (#id) 100
Class, pseudo-class (.class, :hover) 10
Element selectors (div, p) 1
Universal selector (*) 0

✅ 3. Mfano wa Specificity kwa Vitendo

<h1 class="title" id="header">Habari</h1>

CSS:

h1 { color: blue; }                 /* Specificity = 1 */
.title { color: green; }           /* Specificity = 10 */
#header { color: red; }            /* Specificity = 100 */

Matokeo:
Rangi ya h1 itakuwa nyekundu, kwa sababu #header ina specificity kubwa zaidi.


✅ 4. Inline Styles na !important

<h1 id="main" style="color: orange;">Karibu</h1>

Inline style inakuwa na specificity ya 1000 — hivyo hushinda zote.

Pia, ikiwa utatumia !important, hiyo ina nguvu ya kipekee na hushinda hata selector yoyote:

.title {
  color: blue !important;
}

Lakini tumia !important kwa tahadhari — ni vizuri kutumia specificity ya kawaida ili kuweka msimamizi bora wa CSS zako.


✅ 5. Jinsi ya Kuepuka Migongano


Hitimisho

Specificity ni sehemu muhimu ya CSS ambayo kila mbunifu wa tovuti anatakiwa kuelewa. Ikiwa hautazingatia specificity, unaweza kuona mitindo yako haitumiki jinsi ulivyotarajia. Kwa kuielewa, utaweza kusuluhisha migongano ya CSS kwa haraka na kwa ustadi.


🧠 Maswali ya Kujitathmini

  1. Ni ipi kati ya zifuatazo ina specificity kubwa zaidi?
    a) .title
    b) h1
    c) #header
    d) *

  2. Specificity ya selector p.intro ni ngapi?
    a) 1
    b) 10
    c) 11
    d) 101

  3. Ni ipi hutumika kushinda specificity zote ikiwa imewekwa?
    a) .class
    b) #id
    c) style
    d) !important

  4. Selector div ul li a:hover ina specificity ya:
    a) 4
    b) 11
    c) 12
    d) 13

  5. Ni ipi kati ya hizi ni njia bora ya kuepuka migongano ya specificity?
    a) Kutumia id mara nyingi
    b) Kutumia !important kila sehemu
    c) Kufuatilia mfumo wa selectors wa ndani kwenda nje
    d) Kutumia universal selector

Jiunge nasi WhatsApp kupata update zetu

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

Nzuri            Mbaya            Save
Author: Rajabu image Tarehe: 2025-07-03 Topic: CSS Main: ICT File: Download PDF Views 522

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 ai web app    👉2 Dua za Mitume na Manabii    👉3 Madrasa kiganjani    👉4 Kitau cha Fiqh    👉5 Simulizi za Hadithi Audio    👉6 web hosting   

Post zinazofanana:

CSS - SOMO LA 11: Mitindo ya Border (Border Styles)

Katika somo hili, utajifunza jinsi ya kudhibiti mipaka (borders) ya vipengele kwa kutumia CSS. Tutajifunza namna ya kuweka unene wa border, rangi, aina ya mstari, na pia jinsi ya kutumia border kwa upande mmoja tu.

Soma Zaidi...
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 1: Maana ya CSS, kazi zake na historia yake

Katika somo hili utakwenda kujifunza maana ya CSS, pia nitakujulisha kazi zake. Mwisho utatambuwa historia ya CSS toka kuanzishwa.

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 18: Grid Layout

Katika somo hili, utajifunza misingi ya CSS Grid Layout, mfumo wenye nguvu wa kupanga vipengele katika safu (rows) na nguzo (columns). Tutachambua display: grid, pamoja na grid-template-columns, grid-template-rows, gap, grid-column, na grid-row.

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 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 34: if() Condition katika CSS

Katika somo hili, tutajifunza kipengele kipya kinachoitwa if() function ndani ya CSS, kilichoanza kupatikana kwenye toleo la Chrome 137. Kipengele hiki kinaturuhusu kuandika mantiki ya masharti moja kwa moja kwenye property ya CSS, bila kutumia JavaScript wala media query zilizotawanyika. Tutajifunza pia aina za queries: media(), supports(), na style() pamoja na matumizi yao ya kivitendo kwenye tovuti. Mwisho, tutaeleza kwa kina kuhusu pointer na any-pointer.

Soma Zaidi...
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 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...