Treci la conținutul principal

Funcții matematice CSS

Datorită funcțiilor matematice, valorile proprietăților din CSS pot fi expresii matematice.

Acest capitol analizează patru dintre ele:

  • calc()
  • max()
  • min()
  • clamp()

Funcția CSS calc()

Folosește calc() când valoarea unei proprietăți trebuie să fie rezultatul unui calcul.

Operatorii acceptați sunt adunarea (+), scăderea (-), înmulțirea (*) și împărțirea (/), iar unitățile pot fi combinate, de exemplu pixeli cu procente.

Exemplu

Atât lățimea, cât și înălțimea acestui element <div> provin din calc().

Prompt
Creează o pagină cu un div care folosește calc() pentru a-i seta lățimea la 100% minus 100px și înălțimea la 30vh plus 50px. Centrează-l cu margin auto și adaugă un chenar de 1px solid negru și 10px padding.
Rezultat: pagină HTML completă

Sintaxă CSS

styles.css
calc(expression)

Funcția CSS max()

Dintr-o listă de valori separate prin virgulă, max() alege cea mai mare valoare și o folosește pentru proprietate.

Exemplu

Dintre 50% și 300px, max() îi dă lui #div1 ca lățime valoarea mai mare.

Prompt
Creează o pagină cu un div care folosește max() pentru a-i seta lățimea la valoarea cea mai mare dintre: 50% sau 300px. Dă-i o înălțime de 100px, un chenar de 1px solid negru și 10px padding.
Rezultat: pagină HTML completă

Sintaxă CSS

styles.css
max(value1, value2, ...)

Funcția CSS min()

Dintr-o listă de valori separate prin virgulă, min() alege cea mai mică valoare și o folosește pentru proprietate.

Exemplu

Dintre 50% și 300px, min() îi dă lui #div1 ca lățime valoarea mai mică.

Prompt
Creează o pagină cu un div care folosește min() pentru a-i seta lățimea la valoarea cea mai mică dintre: 50% sau 300px. Dă-i o înălțime de 100px, un chenar de 1px solid negru și 10px padding.
Rezultat: pagină HTML completă

Sintaxă CSS

styles.css
min(value1, value2, ...)

Funcția CSS clamp()

O valoare care reacționează la dimensiunea ferestrei de vizualizare, dar rămâne în anumite limite, vine de la clamp(): ea variază între un minim, o valoare preferată și un maxim.

Acestea trei sunt și parametrii funcției și se rezolvă astfel:

  • O valoare preferată aflată între minim și maxim se folosește ca atare.
  • O valoare preferată sub minim cedează locul valorii minime.
  • O valoare preferată peste maxim cedează locul valorii maxime.

Exemplu

Font-size-ul elementului <h2> este 5vw, limitat la cel puțin 1.5rem și cel mult 3rem. Elementul <div> se bazează și el pe clamp(), atât pentru font-size, cât și pentru lățime.

Prompt
Creează o pagină cu un h2 care folosește clamp() pentru font-size (minim 1.5rem, preferat 5vw, maxim 3rem) și un div care folosește clamp() atât pentru font-size (minim 1rem, preferat 2.5vw, maxim 2rem), cât și pentru width (minim 200px, preferat 50%, maxim 600px). Adaugă div-ului un chenar de 1px solid verde și 10px padding.
Rezultat: pagină HTML completă

Sintaxă CSS

styles.css
clamp(min, preferred, max)