Il tuo sito ha qualcosa in più.
Riprendi index.html e style.css di ieri. Oggi immagini, didascalie, elenchi e tabelle rendono la tua pagina più utile.
2G · 22 ottobre · 2 ore
Riprendi la pagina di ieri
15 minuti
- Apri in VS Code la cartella
il-mio-sito, conindex.htmlestyle.css. Conservane prima una copia chiamatacopia-21-ottobre. - Apri index.html nel browser. Controlla titolo, due servizi con prezzi, orari e menu.
- Se manca qualcosa, usa la lezione di ieri. Prima completa questi pezzi.
Oggi continui sulla stessa attività inventata. Non ricominciare da una pagina vuota. Dopo ogni modifica salva con Ctrl+S e aggiorna il browser.
Leggi il codice come tre pezzi
<p>AperturaRipariamo biciclette.Contenuto visibile</p>Chiusura: nota la /Insieme formano un elemento HTML. I tag dicono al browser che cosa rappresenta il contenuto. I colori in questa guida ti aiutano a leggere: non devi scriverli nel tuo file.
Viola = tag Blu = attributo Verde = valore
Un attributo aggiunge un’informazione nel tag di apertura: <section id="orari"> ha l’attributo id con valore orari. class, se la usi, assegna una categoria che puoi richiamare nel CSS. Non è un tag.
Ripasso: tutti i tag della pagina di ieri, uno per uno
<!doctype html> è una dichiarazione, non un tag da chiudere: dice al browser di usare l’HTML moderno.
<html>- Contiene l’intero documento.
lang="it"indica che il testo è in italiano. <head>- Contiene le informazioni per il browser: titolo della scheda, codifica e collegamento al CSS. Non è l’intestazione visibile della pagina.
<meta>- Imposta informazioni sul documento.
charset="utf-8"permette di leggere correttamente gli accenti. La riga conname="viewport"econtent="width=device-width, initial-scale=1"adatta la vista alla larghezza del dispositivo. Non ha tag di chiusura. <title>- Il titolo che leggi sulla scheda del browser; sta dentro head. Il titolo visibile nel sito è invece h1.
<link>- Collega un file esterno:
rel="stylesheet"dice che è un foglio di stile ehref="style.css"indica il file. Non ha chiusura. <body>- Contiene ciò che appare nella pagina: testi, immagini, collegamenti…
<header>- L’intestazione visibile: per esempio il nome del negozio e il suo menu.
<nav>- Raggruppa i collegamenti principali per spostarsi nel sito.
<a>- Un collegamento cliccabile. In
<a href="#orari">Orari</a>, href è la destinazione e “Orari” è il testo da cliccare. #orari cerca l’elemento conid="orari"nella stessa pagina. <main>- Il contenuto principale della pagina. Oggi aggiungi qui i nuovi blocchi, prima di
</main>. <section>- Raggruppa contenuti sullo stesso argomento, di solito con un titolo.
id="orari"assegna un nome univoco alla sezione: puoi raggiungerla dal menu. <h1>- Il titolo principale visibile, per esempio il nome del negozio. In questo sito ne usiamo uno per pagina.
<h2>- Il titolo di una sezione, per esempio “Servizi” oppure “Orari”. Non sceglierlo solo perché ti piace la dimensione.
<h3>- Il titolo di una sottosezione: per esempio un singolo servizio dentro la sezione “Servizi”.
<p>- Un paragrafo di testo. Apri con
<p>e chiudi con</p>. <ul>- Un elenco senza ordine numerato, come una lista di servizi. Ogni voce è un li.
<footer>- La parte conclusiva della pagina: per esempio contatti e informazioni sul negozio.
<div>- Un contenitore generico, senza un significato preciso. Serve quando vuoi raggruppare elementi per il CSS e non c’è un elemento più adatto.
Annidare = mettere dentro. Chiudi prima l’elemento più interno:
<main>
<section id="servizi">
<h2>I nostri servizi</h2>
<p>Ripariamo biciclette.</p>
</section>
</main>Posso continuare nel banco prova?
Sì: usa il banco prova di ieri, dove puoi ritrovare il codice nello stesso browser. Elenchi e tabelle funzionano anche lì. Per l’immagine locale scarica i due file nella stessa cartella e apri index.html dal PC.
Una foto con una spiegazione
25 minuti · scopri figure, img e figcaption
Prima pensa: quale immagine aiuta a capire cosa offre il tuo negozio? Scegli una tua immagine o una fornita dal docente. Non usare foto dei compagni.
- Crea la cartella
imgdentro il-mio-sito. Salva lì l’immagine; per questo esempio usiamoofficina.jpg. Se il tuo file è .png, usa quel nome anche nel codice: cambiare estensione non converte l’immagine. - Aggiungi il blocco qui sotto dentro
<main>, dopo la presentazione. - Riscrivi descrizione e didascalia per la tua immagine.
Scrivi nel file HTML
<figure>
<img src="img/officina.jpg"
alt="Banco da lavoro con ruote e attrezzi per riparare biciclette">
<figcaption>Il banco dove prepariamo le bici per il prossimo giro.</figcaption>
</figure>Come si compone il risultato
<img>Qui comparirà la tua fotoIl file si trova in img/officina.jpgIl banco dove prepariamo le bici per il prossimo giro.
Questo è uno schema, non la foto da scaricare. Usa la tua immagine nel progetto.
<figure>- Il contenitore dell’immagine e della sua didascalia. Si chiude dopo figcaption.
<img>- Mostra l’immagine.
srcindica il percorso del file;altdescrive ciò che si vede, per chi usa un lettore di schermo o se il file non si carica. Non scrivere</img>: questo elemento non ha contenuto interno né tag di chiusura. <figcaption>- La didascalia visibile che accompagna l’immagine. Sta dentro figure. Può spiegare il contesto; alt descrive invece il contenuto dell’immagine.
figure raggruppa immagine e didascalia. figcaption è il testo visibile sotto la foto. alt descrive il contenuto dell’immagine anche a chi non la vede.
L’immagine è enorme, oppure non compare
In fondo a style.css aggiungi:
figure { margin: 24px 0; }
figure img { max-width: 100%; height: auto; display: block; }
figcaption { margin-top: 8px; }Se non compare, controlla cartella, nome ed estensione. img/officina.jpg significa “entra nella cartella img e apri officina.jpg”. Rispetta maiuscole e minuscole. La foto locale non appare nel banco prova: provala aprendo il file HTML dal PC.
Prova: restringi la finestra. La foto deve restringersi senza uscire dal bordo. Per un momento scrivi un nome di file sbagliato: quale testo appare? Poi ripristina il percorso corretto.
Una lista può avere un ordine
15 minuti · scopri ol, strong ed em
Ieri hai usato ul per i servizi. Oggi spiega come lavorate in tre passaggi, con un elenco numerato ol. Prima di provare, prevedi cosa cambierà rispetto a ul.
Dentro main, prima di </main>:
Scrivi nel file HTML
<section id="come-lavoriamo">
<h2>Come lavoriamo</h2>
<ol>
<li>Ascoltiamo il problema della bici.</li>
<li>Concordiamo <strong>il prezzo prima della riparazione</strong>.</li>
<li>Controlliamo il risultato <em>insieme a te</em>.</li>
</ol>
</section>Risultato nel browser
Come lavoriamo
- Ascoltiamo il problema della bici.
- Concordiamo il prezzo prima della riparazione.
- Controlliamo il risultato insieme a te.
ol: i numeri li mette il browser, non li scrivi nel testo.
Il pulsante modifica solo questa anteprima. Nel tuo file prova a cambiare entrambi i tag: apertura e chiusura.
<section>- Tiene insieme il titolo e l’elenco.
id="come-lavoriamo"è il nome di questa sezione, da usare anche in un link del menu. <h2>- Il titolo della sezione: qui “Come lavoriamo”.
<ol>- Elenco ordinato: il browser numera le voci. Apri ol prima della lista e chiudilo dopo l’ultima voce.
<li>- Una singola voce dell’elenco. Ogni passaggio ha il proprio
<li>…</li>; sta dentro ol oppure ul. <strong>- Una parte importante del testo. Il browser di solito la mostra in grassetto: qui evidenzia che concordiamo il prezzo prima.
<em>- Una parte da leggere con enfasi. Di solito appare in corsivo: qui mette l’accento su “insieme a te”.
strong indica un’informazione importante; em mette enfasi su una parte della frase. Non servono a creare titoli: per quelli usa h1, h2 e h3.
Prova: aggiungi un quarto passaggio, poi spostalo al secondo posto. Devi riscrivere i numeri? Spiega perché questo elenco ha un ordine, mentre quello dei servizi può non averlo.
Orari facili da confrontare
25 minuti · scopri table, caption, tr, th e td
Prima pensa: come mostreresti tre giorni con orari diversi? Una tabella mette in relazione giorni e orari. Non usarla per disporre tutta la pagina.
Nella sezione id="orari" conserva il titolo h2. Sostituisci solo il vecchio paragrafo degli orari con:
Scrivi nel file HTML
<table>
<caption>Orari di apertura</caption>
<tr>
<th scope="col">Giorno</th>
<th scope="col">Orario</th>
</tr>
<tr>
<th scope="row">Lunedì</th>
<td>Chiuso</td>
</tr>
<tr>
<th scope="row">Martedì–venerdì</th>
<td>9:00–18:00</td>
</tr>
<tr>
<th scope="row">Sabato</th>
<td>9:00–12:00</td>
</tr>
</table>Trova il tag nella tabella
Tocca un nome: si evidenzia la parte che costruisce.
| Giorno | Orario |
|---|---|
| Lunedì | Chiuso |
| Martedì–venerdì | 9:00–18:00 |
| Sabato | 9:00–12:00 |
Ogni riga ha due celle: una per il giorno e una per l’orario.
<table>- Il contenitore di tutta la tabella. Aprilo prima di caption, chiudilo dopo l’ultima riga.
<caption>- Il titolo che spiega il contenuto della tabella. Qui è “Orari di apertura”; va dentro table, prima delle righe.
<tr>- Una riga: contiene le sue celle. Il browser le dispone una accanto all’altra. Poi un nuovo tr comincia una nuova riga.
<th>- Una cella di intestazione: spiega che cosa significano i dati.
scope="col"descrive la colonna sotto;scope="row"descrive la riga accanto. <td>- Una cella con un dato, per esempio “Chiuso” o “9:00–18:00”. Sta dentro tr, allo stesso livello delle altre celle.
Il CSS: bordi, spazi e colori della tabella
Queste sono regole CSS, non tag HTML. Il selettore prima delle parentesi graffe sceglie gli elementi; dentro scrivi proprietà e valori.
Aggiungi a style.css:
table { width: 100%; border-collapse: collapse; }
caption { text-align: left; font-weight: bold; margin-bottom: 8px; }
th, td { border: 1px solid #9aafa7; padding: 10px; text-align: left; }
th { background: #e4f3eb; }Prova: cambia gli orari e aggiungi la domenica. Ogni riga deve mantenere due celle. Fai trovare a un compagno l’orario del sabato senza indicargli dove guardare.
Prova il sito come una persona che non lo conosce
20 minuti · controllo e correzioni
- Su una finestra stretta, leggi didascalia, prezzi e orari senza scorrere a destra.
- Chiedi a un compagno di trovare: che cosa offri, cosa succede prima della riparazione e quando apri il sabato.
- Correggi una difficoltà che hai osservato. Poi fate la stessa prova di nuovo.
Non cancellare i servizi di ieri. Se hai creato una nuova sezione, aggiungi il collegamento nel menu e provalo.
Se hai già finito
Scegli una sola estensione:
- Una seconda pagina: sposta “Come lavoriamo” in un file separato e crea i collegamenti per andare e tornare. Aiuto di ieri.
- Domande frequenti: usa details e summary per tre domande reali dei clienti. Esempio da riprendere.
- Un confronto: crea una piccola tabella con servizio, prezzo e durata. Scrivi intestazioni chiare e controlla la vista stretta.
Come funzionano details e summary?
<details>- Un blocco che il lettore può aprire e chiudere. Contiene prima summary, poi il contenuto nascosto.
<summary>- Il titolo cliccabile del blocco details. Qui è la domanda del cliente; la risposta va dopo, dentro un p.
<details>
<summary>Devo prenotare?</summary>
<p>Sì, chiamaci prima di portare la bici.</p>
</details>Prova il risultato:
Devo prenotare?
Sì, chiamaci prima di portare la bici.
Salva e spiega
Ultimi 20 minuti: recupero dei passaggi mancanti, salvataggio e spiegazione
Salva index.html, style.css e la cartella img. Riapri il sito dal PC. Mostra al docente un nuovo tag, il suo effetto e una prova che hai fatto. Se manca tempo, termina bene un’aggiunta e conserva il resto per la prossima lezione.