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:
-
+,-,*,/ -
Thamani zenye aina tofauti (%, px, rem)
✅ 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 hadi2rem, 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()navar()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
-
Kazi ya
calc()ni ipi?
a) Kuongeza opacity
b) Kufanya hesabu kwenye vipimo
c) Kuweka rangi
d) Kuunda animation -
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 -
Kipi kinaweza kuchukua thamani ya CSS Variable?
a)calc()
b)min()
c)var()
d)font-family -
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% -
Je, unaweza kutengeneza custom logic katika CSS kwa kutumia:
a) JavaScript tu
b)@mediapekee
c)var()+calc()
d)animation-name
Umeionaje Makala hii.. ?
Share On:
👉1 Kitau cha Fiqh 👉2 Dua za Mitume na Manabii 👉3 Tafasiri ya Riyadh Swalihina 👉4 Bongolite - Game zone - Play free game 👉5 web hosting 👉6 ai web app
Post zinazofanana:
Vigezo vya kuzingatia unapotaka kununua kompyuta kwa ajili ya programming
hapa ninakuletea vitu vya kuangalia unapotaka kununua kompyuta kwa ajili ya kufanyia programming. Ama kutengeneza software mbalimbali.
Soma Zaidi...Changamoto wanazokutana nazo wanafunzi wa tehama
Hizi ni baadhi ya changamoto wanazokutana nazo wanafunzi wa tehama kwenye darasa la Bongoclass
Soma Zaidi...Njia za kujifunza Programming language yeyote ile
Hapa nitakwenda kukueleza njia ambazo naweza kuzituia ili kujifunza programming kwa urahisi
Soma Zaidi...Je unahitaji kutengenezewa Android App
Bongoclass tunatoa Fursa ya kupata huduma ya kutengenezewa App
Soma Zaidi...Ijuwe platform ya IndexNow
Je umeshawahi kuweka post yako kwenye blog halafu ikachukuwa mpaka siku 3 kuonekana kwenye search engine kama Google, Index ama Bing. Bsi project ya IndexNow imekuja kutatuwa tatizo hilo
Soma Zaidi...