Prerequisiti: Organizzazione del foglio di stile.
Progetto finale e diagnosi
Progetto finale e diagnosi: fondamenti.
Quando una regola non produce l’effetto previsto, procedi per ipotesi verificabili. Controlla prima che il file corretto sia caricato, poi che il selettore corrisponda all’elemento. Verifica la validità del valore e infine la dichiarazione vincente nella cascata. Una modifica casuale di colore o un nuovo !important può nascondere la causa. Durante il debug cambia una cosa alla volta e annota il risultato, così ogni prova fornisce un’informazione utile.
Come funziona: progetto finale e diagnosi
Progetto finale e diagnosi: comportamento nel browser.
La scheda Styles o Regole mostra dichiarazioni applicabili, ereditate e superate. Computed o Calcolato mostra i valori risultanti e aiuta a trovare l’origine delle proprietà. Il diagramma del box model permette di confrontare dimensioni dichiarate e spazio effettivo. Le modifiche effettuate nei DevTools sono normalmente temporanee: riporta nel file sorgente le correzioni che vuoi conservare e ricarica per verificare che non dipendano solo dalla sessione di ispezione.
Scelte di utilizzo e limiti
Progetto finale e diagnosi: progetto e verifica.
Realizza una pagina con titolo, introduzione e tre schede di lezioni. Deve usare un CSS esterno, selettori di classe, proprietà personalizzate e una griglia a una colonna che si espande su schermi ampi. I collegamenti devono avere un focus visibile, il testo non deve traboccare e la pagina deve restare leggibile con zoom. Non serve copiare il layout di un sito famoso: l’obiettivo è dimostrare di saper spiegare ogni scelta e correggere un errore intenzionale.
Esempio commentato
Progetto finale e diagnosi: HTML e CSS.
Esempio con stile esterno. Il documento index.html collega il file stile.css mediante il tag link nella head.
Documento HTML completo
<!doctype html>
<html lang="it">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Progetto finale</title>
<link rel="stylesheet" href="stile.css">
</head>
<body>
<main class="pagina">
<h1>Le mie lezioni</h1>
<p>Un piccolo catalogo responsive.</p>
<div class="catalogo">
<article class="scheda" id="html"><h2>HTML</h2><a href="#html">Ripassa HTML</a></article>
<article class="scheda" id="css"><h2>CSS</h2><a href="#css">Ripassa CSS</a></article>
<article class="scheda" id="layout"><h2>Layout</h2><a href="#layout">Ripassa il layout</a></article>
</div>
</main>
</body>
</html>
File stile.css
:root { --accento: #174a7e; --spazio: 1rem; }
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-family: Arial, sans-serif; line-height: 1.6; color: #222; }
.pagina { max-width: 65rem; margin-inline: auto; padding: var(--spazio); }
.catalogo { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spazio); }
.scheda { border: 1px solid var(--accento); padding: var(--spazio); overflow-wrap: anywhere; }
a { color: var(--accento); }
a:focus-visible { outline: 3px solid var(--accento); outline-offset: 3px; }
@media (min-width: 48rem) {
.catalogo { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
Risultato nel browser
Ogni classe rappresenta un componente. La griglia parte da una colonna e il breakpoint ne introduce tre. Lo spazio condiviso mantiene una relazione coerente fra padding e gap.
| Proprietà | Valore nell’esempio | Significato |
|---|---|---|
box-sizing | border-box | Convenzione per includere o escludere padding e bordo dalle dimensioni dichiarate. |
margin | 0 | Spazio esterno della scatola. |
font-family | Arial, sans-serif | Famiglie di font, provate nell’ordine indicato. |
line-height | 1.6 | Altezza della riga; un numero senza unità è un fattore. |
color | #222 | Colore del testo; non imposta lo sfondo. |
max-width | 65rem | Limite superiore alla larghezza. |
LABORATORIO
Sperimentare: Progetto finale e diagnosi
Ogni classe rappresenta un componente. La griglia parte da una colonna e il breakpoint ne introduce tre. Lo spazio condiviso mantiene una relazione coerente fra padding e gap.
Obiettivo: Comprendere e applicare progetto finale e diagnosi attraverso esempi e verifica nel browser.
Software: editor di testo e browser con DevTools; Tempo: 30 minuti.
Preparazione: scarica l’esempio completo e estrai lo ZIP. Apri index.html nel browser. Puoi anche aprire l’esempio online.
Apri il file stile.css nell’editor. Le lezioni iniziali usano un documento già preparato per concentrarsi sulle regole; il collegamento esterno e lo stile interno vengono spiegati nelle lezioni dedicate. Le modifiche nei DevTools sono normalmente temporanee.
Procedura passo passo
- Osserva il punto di partenza: apri l’esempio, confronta markup e regole e individua il selettore o il contesto di layout rilevante.
- Esegui la modifica: Correggi il selettore nel file, salva e ricarica.
- Salva e ricarica la pagina dopo ogni modifica. Confronta gli elementi che devono cambiare con quelli che devono restare invariati.
- Ispeziona il risultato: usa il menu Ispeziona e controlla Styles/Regole e Computed/Calcolato. Per layout Flex o Grid attiva l’overlay, se disponibile.
- Annota causa ed effetto: scrivi il valore o la struttura iniziale, il cambiamento e il risultato. Ripristina il punto di partenza prima dell’esercizio autonomo.
Le schede hanno bordo e padding dopo la correzione; il layout cambia con la larghezza e i collegamenti restano raggiungibili e riconoscibili da tastiera.
Il font e alcuni dettagli dell’interfaccia dipendono dal browser. Valuta la proprietà e il comportamento descritti, non una corrispondenza perfetta con uno screenshot.
Verifica del risultato
| Controllo | Criterio |
|---|---|
| Effetto specifico | Le schede hanno bordo e padding dopo la correzione; il layout cambia con la larghezza e i collegamenti restano raggiungibili e riconoscibili da tastiera. |
| Corrispondenza del codice | Individua la dichiarazione o la relazione HTML responsabile della differenza. |
| Persistenza | Riporta la modifica nel file e verifica dopo un ricaricamento. |
| Spiegazione | Motiva la differenza senza affidarti soltanto a uno screenshot. |
Esercizio autonomo
Aggiungi una quarta scheda con testo lungo senza scrivere nuovi selettori e senza fissare l’altezza.
Consegna: file modificati e una breve spiegazione di selettore, proprietà e risultato. Criterio di riuscita: il cambiamento richiesto funziona dopo il ricaricamento e non taglia informazioni indispensabili.
<article class="scheda" id="verifica">
<h2>Verifica finale</h2>
<p>Una descrizione più lunga deve poter occupare più righe senza essere tagliata.</p>
<a href="#verifica">Rivedi la verifica</a>
</article>Integra la soluzione nel punto pertinente: modifica o sostituisci le regole coinvolte invece di accumulare dichiarazioni contraddittorie. Le altre parti dell’esempio restano necessarie.
Verifica dei concetti
Progetto finale e diagnosi: interpretazione e applicazione.
Seleziona una domanda per visualizzare la risposta e confrontarla con la tua.
1. Quale consegna dimostra anche la comprensione del progetto? ▾
2. Come si interpreta il codice dell’esempio? ▾
3. Quale risultato permette di verificare la modifica del laboratorio? ▾
4. Quale attenzione evita un’interpretazione sbagliata? ▾
Riferimento tecnico: MDN — riferimento CSS. Cerca le proprietà o i selettori utilizzati nell’esempio.