El model de caixa és un concepte fonamental en CSS que descriu com es disposen i es dimensionen els elements HTML en una pàgina web. Cada element HTML es representa com una caixa rectangular, i el model de caixa defineix les diferents parts d'aquesta caixa i com interactuen entre elles.
Parts del Model de Caixa
Cada caixa en el model de caixa de CSS es compon de quatre parts principals:
- Contingut (Content): L'àrea on es mostra el contingut real de l'element, com text, imatges, etc.
- Farciment (Padding): L'espai entre el contingut i la vora de l'element. El farciment és transparent.
- Vora (Border): L'àrea que envolta el farciment. La vora pot tenir un color, estil i amplada definits.
- Marge (Margin): L'espai fora de la vora de l'element. El marge és transparent i separa l'element dels altres elements.
A continuació es mostra una representació visual del model de caixa:
+---------------------------+ | Marge (Margin) | | +---------------------+ | | | Vora (Border) | | | | +---------------+ | | | | | Farciment | | | | | | (Padding) | | | | | | +---------+ | | | | | | | Contingut| | | | | | | | (Content)| | | | | | | +---------+ | | | | | +---------------+ | | | +---------------------+ | +---------------------------+
Propietats CSS del Model de Caixa
Contingut
El contingut es defineix per les dimensions de l'element, que es poden establir amb les propietats width i height.
Farciment
El farciment es defineix amb la propietat padding. Es pot especificar per a cada costat de la caixa (superior, dret, inferior, esquerre) o de manera abreujada.
.element {
padding-top: 10px;
padding-right: 20px;
padding-bottom: 10px;
padding-left: 20px;
/* O de manera abreujada */
padding: 10px 20px;
}Vora
La vora es defineix amb la propietat border. Es pot especificar l'amplada, l'estil i el color de la vora.
.element {
border-width: 2px;
border-style: solid;
border-color: #000;
/* O de manera abreujada */
border: 2px solid #000;
}Marge
El marge es defineix amb la propietat margin. Igual que el farciment, es pot especificar per a cada costat de la caixa o de manera abreujada.
.element {
margin-top: 10px;
margin-right: 20px;
margin-bottom: 10px;
margin-left: 20px;
/* O de manera abreujada */
margin: 10px 20px;
}Exemples Pràctics
Exemple 1: Caixa amb Farciment i Vora
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Model de Caixa</title>
<style>
.box {
width: 200px;
height: 100px;
padding: 20px;
border: 2px solid #000;
background-color: #f0f0f0;
}
</style>
</head>
<body>
<div class="box">Contingut de la caixa</div>
</body>
</html>Exemple 2: Caixa amb Marge
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Model de Caixa</title>
<style>
.box {
width: 200px;
height: 100px;
margin: 20px;
border: 2px solid #000;
background-color: #f0f0f0;
}
</style>
</head>
<body>
<div class="box">Contingut de la caixa</div>
</body>
</html>Exercicis Pràctics
Exercici 1: Crear una Caixa amb Farciment, Vora i Marge
Instruccions:
- Crea un fitxer HTML amb una caixa que tingui:
- Amplada de 300px i alçada de 150px.
- Farciment de 15px.
- Vora de 3px de color blau.
- Marge de 25px.
Solució:
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exercici Model de Caixa</title>
<style>
.box {
width: 300px;
height: 150px;
padding: 15px;
border: 3px solid blue;
margin: 25px;
background-color: #e0e0e0;
}
</style>
</head>
<body>
<div class="box">Contingut de la caixa</div>
</body>
</html>Exercici 2: Ajustar les Dimensions d'una Caixa
Instruccions:
- Crea un fitxer HTML amb una caixa que tingui:
- Amplada de 250px i alçada de 100px.
- Farciment de 10px.
- Vora de 2px de color vermell.
- Marge de 20px.
- Ajusta les dimensions de la caixa perquè el contingut no es desbordi.
Solució:
<!DOCTYPE html>
<html lang="ca">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Exercici Model de Caixa</title>
<style>
.box {
width: 250px;
height: 100px;
padding: 10px;
border: 2px solid red;
margin: 20px;
background-color: #d0d0d0;
box-sizing: border-box; /* Ajusta les dimensions per incloure vora i farciment */
}
</style>
</head>
<body>
<div class="box">Contingut de la caixa</div>
</body>
</html>Conclusió
El model de caixa és essencial per entendre com es disposen i es dimensionen els elements en una pàgina web. Comprendre les diferents parts del model de caixa i com utilitzar les propietats CSS per ajustar-les és fonamental per crear dissenys web efectius i atractius. En els següents mòduls, aprofundirem en altres aspectes del disseny i l'estilització amb 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
