Les funcions de CSS són eines poderoses que permeten manipular valors de propietats de manera dinàmica i flexible. Aquestes funcions poden ajudar a simplificar el codi CSS i fer-lo més mantenible i reutilitzable. En aquesta secció, explorarem algunes de les funcions més comunes i útils de CSS.
Funcions de Color
rgb() i rgba()
Aquestes funcions s'utilitzen per definir colors en format RGB (Red, Green, Blue) i RGBA (Red, Green, Blue, Alpha).
/* Color RGB */
.color-rgb {
background-color: rgb(255, 0, 0); /* Vermell */
}
/* Color RGBA amb opacitat */
.color-rgba {
background-color: rgba(255, 0, 0, 0.5); /* Vermell amb 50% d'opacitat */
}hsl() i hsla()
Aquestes funcions defineixen colors utilitzant el model de color HSL (Hue, Saturation, Lightness) i HSLA (Hue, Saturation, Lightness, Alpha).
/* Color HSL */
.color-hsl {
background-color: hsl(120, 100%, 50%); /* Verd */
}
/* Color HSLA amb opacitat */
.color-hsla {
background-color: hsla(120, 100%, 50%, 0.5); /* Verd amb 50% d'opacitat */
}Funcions de Manipulació de Valors
calc()
La funció calc() permet realitzar càlculs matemàtics per determinar valors de propietats CSS.
/* Càlcul de l'amplada */
.calculated-width {
width: calc(100% - 50px);
}
/* Càlcul de la mida de la font */
.calculated-font-size {
font-size: calc(1rem + 2vw);
}var()
La funció var() s'utilitza per accedir a variables CSS definides amb --.
:root {
--primary-color: #3498db;
--secondary-color: #2ecc71;
}
.using-variables {
background-color: var(--primary-color);
color: var(--secondary-color);
}Funcions de Transformació
rotate()
La funció rotate() s'utilitza per rotar un element al voltant del seu punt d'origen.
scale()
La funció scale() s'utilitza per escalar un element en l'eix X i/o Y.
Funcions de Gradients
linear-gradient()
La funció linear-gradient() crea un gradient lineal entre dos o més colors.
radial-gradient()
La funció radial-gradient() crea un gradient radial des del centre cap a l'exterior.
Exercicis Pràctics
Exercici 1: Crear un Botó amb Gradient i Rotació
Crea un botó que tingui un gradient lineal com a fons i que es roti 15 graus quan es passa el ratolí per sobre.
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exercici de Funcions CSS</title>
<style>
.gradient-button {
background: linear-gradient(to right, #ff7e5f, #feb47b);
border: none;
color: white;
padding: 15px 30px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
transition: transform 0.3s ease;
}
.gradient-button:hover {
transform: rotate(15deg);
}
</style>
</head>
<body>
<button class="gradient-button">Botó amb Gradient</button>
</body>
</html>Exercici 2: Utilitzar calc() per a Mides Responsives
Crea un contenidor que tingui una amplada que sigui el 50% de la mida de la finestra menys 20 píxels.
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exercici de Funcions CSS</title>
<style>
.responsive-container {
width: calc(50% - 20px);
background-color: #3498db;
color: white;
padding: 20px;
text-align: center;
}
</style>
</head>
<body>
<div class="responsive-container">Contenidor Responsive</div>
</body>
</html>Conclusió
Les funcions de CSS són eines essencials per a qualsevol desenvolupador web, ja que permeten crear dissenys més dinàmics i flexibles. Hem explorat funcions de color, manipulació de valors, transformació i gradients, i hem vist com utilitzar-les en exemples pràctics. Amb aquestes eines, estaràs millor preparat per afrontar qualsevol repte de disseny CSS.
Domini del CSS: De Principiant a Avançat
Mòdul 1: Introducció al CSS
- Què és el CSS?
- Sintaxi i Selectors de CSS
- Com Afegir CSS a HTML
- Propietats Bàsiques de CSS
- Colors en CSS
- Unitats i Mesures en CSS
Mòdul 2: Estilització de Text i Fonts
- Propietats de Text
- Propietats de Fonts
- Integració de Google Fonts
- Alineació i Espaiat de Text
- Decoració i Transformació de Text
Mòdul 3: Model de Caixa i Disseny
- Comprendre el Model de Caixa
- Marge i Farciment
- Vora i Contorn
- Amplada i Alçada
- Dimensionament de Caixa
- Propietat de Visualització de CSS
Mòdul 4: Posicionament i Flotació
- Propietat de Posició de CSS
- Posicionament Estàtic, Relatiu, Absolut i Fix
- Flotació i Neteja de CSS
- Crear Dissenys amb Flotació
- Índex Z de CSS
Mòdul 5: Flexbox
- Introducció a Flexbox
- Propietats del Contenidor Flex
- Propietats dels Elements Flex
- Crear Dissenys amb Flexbox
- Disseny Responsiu amb Flexbox
Mòdul 6: CSS Grid
- Introducció a CSS Grid
- Propietats del Contenidor Grid
- Propietats dels Elements Grid
- Crear Dissenys amb CSS Grid
- Disseny Responsiu amb CSS Grid
Mòdul 7: Tècniques Avançades de CSS
Mòdul 8: Disseny Responsiu
- Introducció al Disseny Responsiu
- Consultes de Mitjans
- Tipografia Responsiva
- Imatges Responsives
- Disseny Mobile-First
Mòdul 9: Preprocessadors i Frameworks
- Introducció als Preprocessadors de CSS
- Conceptes Bàsics de Sass
- Conceptes Bàsics de Less
- Introducció als Frameworks de CSS
- Ús de Bootstrap
Mòdul 10: Millors Pràctiques i Optimització
- Millors Pràctiques de CSS
- Organització del Codi CSS
- Minificació de CSS
- Optimització del Rendiment de CSS
- Depuració de CSS
