En aquesta secció, ens enfocarem en l'estilització dels components del nostre lloc web. Aquest pas és crucial per donar vida al disseny i assegurar-nos que cada element tingui l'aparença desitjada. Treballarem amb diversos components com botons, formularis, capçaleres, peus de pàgina, i altres elements visuals.
Objectius d'Aprenentatge
- Aplicar estils personalitzats a diferents components del lloc web.
- Utilitzar propietats CSS per millorar l'aparença i la funcionalitat dels components.
- Implementar estils consistents per mantenir una coherència visual en tot el lloc web.
Components a Estilitzar
- Botons
- Formularis
- Capçaleres
- Peus de pàgina
- Targetes
- Menús de Navegació
- Botons
Exemples de Codi
/* Estils per al botó primari */ .btn-primary { background-color: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: background-color 0.3s; } .btn-primary:hover { background-color: #0056b3; } /* Estils per al botó secundari */ .btn-secondary { background-color: #6c757d; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: background-color 0.3s; } .btn-secondary:hover { background-color: #5a6268; }
Explicació
- .btn-primary: Defineix un botó amb un color de fons blau i text blanc. També inclou un efecte de transició per canviar el color de fons quan es passa el ratolí per sobre.
- .btn-secondary: Defineix un botó amb un color de fons gris i text blanc, amb un efecte de transició similar.
- Formularis
Exemples de Codi
<form> <label for="name">Nom:</label> <input type="text" id="name" name="name" class="form-input"> <label for="email">Correu Electrònic:</label> <input type="email" id="email" name="email" class="form-input"> <button type="submit" class="btn-primary">Enviar</button> </form>
/* Estils per als inputs del formulari */ .form-input { width: 100%; padding: 10px; margin: 10px 0; border: 1px solid #ccc; border-radius: 5px; box-sizing: border-box; } /* Estils per a les etiquetes del formulari */ form label { display: block; margin-bottom: 5px; font-weight: bold; }
Explicació
- .form-input: Defineix estils per als camps d'entrada del formulari, incloent amplada completa, farciment, marges, i un contorn arrodonit.
- form label: Assegura que les etiquetes del formulari es mostrin com a blocs amb un marge inferior i text en negreta.
- Capçaleres
Exemples de Codi
<header class="site-header"> <h1>Benvingut al Nostre Lloc Web</h1> <nav class="main-nav"> <ul> <li><a href="#">Inici</a></li> <li><a href="#">Sobre Nosaltres</a></li> <li><a href="#">Serveis</a></li> <li><a href="#">Contacte</a></li> </ul> </nav> </header>
/* Estils per a la capçalera del lloc */ .site-header { background-color: #f8f9fa; padding: 20px; text-align: center; border-bottom: 1px solid #e9ecef; } /* Estils per a la navegació principal */ .main-nav ul { list-style: none; padding: 0; } .main-nav li { display: inline; margin: 0 10px; } .main-nav a { text-decoration: none; color: #007bff; } .main-nav a:hover { text-decoration: underline; }
Explicació
- .site-header: Defineix estils per a la capçalera del lloc, incloent un color de fons clar, farciment, alineació central i una línia de contorn inferior.
- .main-nav: Estilitza la navegació principal amb una llista sense punts, elements en línia i enllaços amb colors i decoracions específiques.
- Peus de pàgina
Exemples de Codi
<footer class="site-footer"> <p>© 2023 El Nostre Lloc Web. Tots els drets reservats.</p> </footer>
/* Estils per al peu de pàgina del lloc */ .site-footer { background-color: #343a40; color: white; text-align: center; padding: 20px; position: absolute; bottom: 0; width: 100%; }
Explicació
- .site-footer: Defineix estils per al peu de pàgina, incloent un color de fons fosc, text blanc, alineació central i farciment. També assegura que el peu de pàgina es mantingui a la part inferior de la pàgina.
- Targetes
Exemples de Codi
<div class="card"> <h2 class="card-title">Títol de la Targeta</h2> <p class="card-content">Aquesta és una descripció de la targeta. Conté informació rellevant i útil.</p> </div>
/* Estils per a les targetes */ .card { border: 1px solid #e9ecef; border-radius: 5px; padding: 20px; margin: 20px 0; background-color: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .card-title { margin-top: 0; font-size: 1.5em; } .card-content { font-size: 1em; color: #6c757d; }
Explicació
- .card: Defineix estils per a les targetes, incloent un contorn, contorn arrodonit, farciment, marge, color de fons i una ombra subtil.
- .card-title i .card-content: Estilitza el títol i el contingut de la targeta amb mides de font i colors específics.
- Menús de Navegació
Exemples de Codi
<nav class="navbar"> <ul> <li><a href="#">Inici</a></li> <li><a href="#">Sobre Nosaltres</a></li> <li><a href="#">Serveis</a></li> <li><a href="#">Contacte</a></li> </ul> </nav>
/* Estils per a la barra de navegació */ .navbar { background-color: #007bff; padding: 10px; } .navbar ul { list-style: none; padding: 0; margin: 0; display: flex; justify-content: center; } .navbar li { margin: 0 15px; } .navbar a { color: white; text-decoration: none; font-weight: bold; } .navbar a:hover { text-decoration: underline; }
Explicació
- .navbar: Defineix estils per a la barra de navegació, incloent un color de fons blau i farciment.
- .navbar ul: Estilitza la llista de navegació amb elements flexibles centrats.
- .navbar a: Defineix estils per als enllaços de navegació amb colors, decoracions i efectes de pas del ratolí.
Exercici Pràctic
Tasca
- Crea una pàgina HTML amb els components esmentats anteriorment.
- Aplica els estils CSS proporcionats.
- Personalitza els estils per adaptar-los a les necessitats del teu projecte.
Solució
<!DOCTYPE html> <html lang="ca"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Lloc Web Responsiu</title> <link rel="stylesheet" href="styles.css"> </head> <body> <header class="site-header"> <h1>Benvingut al Nostre Lloc Web</h1> <nav class="main-nav"> <ul> <li><a href="#">Inici</a></li> <li><a href="#">Sobre Nosaltres</a></li> <li><a href="#">Serveis</a></li> <li><a href="#">Contacte</a></li> </ul> </nav> </header> <main> <section> <h2>Formulari de Contacte</h2> <form> <label for="name">Nom:</label> <input type="text" id="name" name="name" class="form-input"> <label for="email">Correu Electrònic:</label> <input type="email" id="email" name="email" class="form-input"> <button type="submit" class="btn-primary">Enviar</button> </form> </section> <section> <h2>Targetes d'Informació</h2> <div class="card"> <h2 class="card-title">Títol de la Targeta</h2> <p class="card-content">Aquesta és una descripció de la targeta. Conté informació rellevant i útil.</p> </div> </section> </main> <footer class="site-footer"> <p>© 2023 El Nostre Lloc Web. Tots els drets reservats.</p> </footer> </body> </html>
/* Estils generals */ body { font-family: Arial, sans-serif; margin: 0; padding: 0; box-sizing: border-box; } /* Estils per a la capçalera del lloc */ .site-header { background-color: #f8f9fa; padding: 20px; text-align: center; border-bottom: 1px solid #e9ecef; } /* Estils per a la navegació principal */ .main-nav ul { list-style: none; padding: 0; } .main-nav li { display: inline; margin: 0 10px; } .main-nav a { text-decoration: none; color: #007bff; } .main-nav a:hover { text-decoration: underline; } /* Estils per als inputs del formulari */ .form-input { width: 100%; padding: 10px; margin: 10px 0; border: 1px solid #ccc; border-radius: 5px; box-sizing: border-box; } /* Estils per a les etiquetes del formulari */ form label { display: block; margin-bottom: 5px; font-weight: bold; } /* Estils per al botó primari */ .btn-primary { background-color: #007bff; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; transition: background-color 0.3s; } .btn-primary:hover { background-color: #0056b3; } /* Estils per a les targetes */ .card { border: 1px solid #e9ecef; border-radius: 5px; padding: 20px; margin: 20px 0; background-color: #fff; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .card-title { margin-top: 0; font-size: 1.5em; } .card-content { font-size: 1em; color: #6c757d; } /* Estils per al peu de pàgina del lloc */ .site-footer { background-color: #343a40; color: white; text-align: center; padding: 20px; position: absolute; bottom: 0; width: 100%; }
Conclusió
En aquesta secció, hem après a estilitzar diversos components del nostre lloc web utilitzant CSS. Hem treballat amb botons, formularis, capçaleres, peus de pàgina, targetes i menús de navegació. Aquests components són essencials per crear un lloc web atractiu i funcional. En la següent secció, ens enfocarem en fer el lloc web responsiu per assegurar-nos que es vegi bé en tots els dispositius.
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