picha

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.

📘 Utangulizi

CSS functions ni kama “tools” maalum zinazoruhusu utendaji wa kisasa zaidi ndani ya styles zako. Kwa kutumia functions hizi, unaweza kufanya mahesabu, kuingiza thamani kutoka kwenye variables, kudhibiti ukubwa kulingana na mazingira ya kifaa, na zaidi — yote haya bila JavaScript.

 


✅ 1. calc() – Mahesabu ya moja kwa moja

Function ya calc() hutumika kufanya hesabu ya vipimo vya CSS.

🔹 Syntax:

width: calc(100% - 50px);

🔹 Mfano kamili:

.container {
  width: calc(100% - 2rem);
  padding: 1rem;
}

Unaruhusiwa kutumia:


✅ 2. clamp() – Kuweka kima cha chini, cha kati, na cha juu

clamp() hutumika kuweka thamani inayobadilika kati ya kiwango cha chini na cha juu kulingana na ukubwa wa skrini.

🔹 Syntax:

font-size: clamp(1rem, 2vw, 2rem);

Maana: font haitashuka chini ya 1rem, itakua hadi 2rem, ikifuata 2% ya viewport width (2vw)


✅ 3. var() – Kutumia CSS Variables

var() hutumika kuchukua thamani kutoka kwenye CSS variable (--custom-property)

🔹 Mfano:

:root {
  --main-color: #3498db;
}

.button {
  background-color: var(--main-color);
}

Hii huruhusu reuse ya rangi, padding, margin, n.k. kwa urahisi.


✅ 4. min() – Kuchukua thamani ndogo

Hufanya kazi kama ilivyo kwenye hesabu: huchagua thamani ndogo zaidi kati ya zinazotolewa.

🔹 Mfano:

width: min(80%, 400px);

Kipengele kitakuwa na width ya 80% ya mzazi au px 400 — chochote kilicho kidogo.


✅ 5. max() – Kuchukua thamani kubwa

Hufanya kazi kinyume na min() — huchagua thamani kubwa zaidi.

🔹 Mfano:

width: max(300px, 50%);

Hapa, kipengele kitaepuka kuwa kidogo sana — kitaanza kwenye 300px au 50%, yoyote iliyo kubwa.


✅ 6. Jinsi ya Kutengeneza Custom Function (kwa kutumia variables)

Ingawa CSS haina functions halisi kama JavaScript, unaweza kuunda reusable behavior kwa kutumia var() na combining functions:

🔹 Mfano:

:root {
  --spacing: 2rem;
  --button-size: calc(var(--spacing) * 3);
}

.btn {
  width: var(--button-size);
  height: var(--spacing);
}

Kwa kutumia calc() na var() pamoja, unaweza kutengeneza logic kama function.


Hitimisho

Functions katika CSS hutoa nguvu ya kipekee kufanya styles zako ziwe flexible, dynamic, na rahisi kusimamia. Kutumia calc(), clamp(), var(), min(), na max() hukuwezesha kupunguza reliance kwa media queries au JavaScript. Ni njia bora ya kuandika CSS ya kisasa.


🔜 Somo Linalofuata: SOMO LA 31 – CSS Filters (blur, brightness, contrast, etc.)

Tutajifunza jinsi ya kutumia filters katika picha, backgrounds, na elementi nyingine kwa madhumuni ya kuifanya UI yako ionekane kisasa.


🧠 Maswali ya Kujitathmini

  1. Kazi ya calc() ni ipi?
    a) Kuongeza opacity
    b) Kufanya hesabu kwenye vipimo
    c) Kuweka rangi
    d) Kuunda animation

  2. clamp(1rem, 2vw, 3rem) ina maana gani?
    a) Thamani ya font haitabadilika
    b) Font itabaki 2rem tu
    c) Font itakuwa kati ya 1rem hadi 3rem kulingana na screen
    d) Font itapungua kila wakati

  3. Kipi kinaweza kuchukua thamani ya CSS Variable?
    a) calc()
    b) min()
    c) var()
    d) font-family

  4. min(500px, 80%) inamaanisha nini?
    a) Chukua kubwa kati ya hizo
    b) Chukua ndogo kati ya hizo
    c) Weka margin 500px
    d) Tumia opacity ya 80%

  5. Je, unaweza kutengeneza custom logic katika CSS kwa kutumia:
    a) JavaScript tu
    b) @media pekee
    c) var() + calc()
    d) animation-name


 

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 492

Share On:

Facebook WhatsApp
Sponsored links
👉1 Kitau cha Fiqh    👉2 web hosting    👉3 Dua za Mitume na Manabii    👉4 Kitabu cha Afya    👉5 Simulizi za Hadithi Audio    👉6 kitabu cha Simulizi   

Post zinazofanana:

Jinsi ya kumsaidia Mtoto mdogo aliyekabwa na kitu kooni

Mfano wa kitu kinachoweza kumaba mtoto kooni ni kama chagula kigumu, pesa ya sarafu, kijiwe na mengineyo. Endapo hili litataokea msaada wa haraka unahitajika kwa ulazima.

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

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 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 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...
CSS - SOMO LA 25: CSS Shorthand Properties

Katika somo hili tutajifunza kwa kina kuhusu CSS Shorthand Properties — ni nini, jinsi zinavyofanya kazi, faida zake, na mifano mbalimbali ya kutumia shorthand kuandika CSS kwa njia fupi na bora zaidi.

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