Prerequisiti: Allineamento e spaziatura.
Ripetizione adattiva con auto-fit e auto-fill
Ripetizione adattiva con auto-fit e auto-fill: fondamenti.
repeat() può combinare auto-fit o auto-fill con una gamma di dimensioni per creare tante colonne quante entrano nel contenitore. repeat(auto-fit, minmax(12rem, 1fr)) consente colonne con un minimo di 12rem e crescita flessibile. Quando il contenitore diventa più largo, il numero di tracce possibili aumenta senza una media query per ogni passaggio.
Come funziona: ripetizione adattiva con auto-fit e auto-fill
Ripetizione adattiva con auto-fit e auto-fill: comportamento nel browser.
auto-fill mantiene le tracce vuote della ripetizione che possono trovare spazio; auto-fit, dopo la collocazione pertinente, può collassare quelle vuote e lasciare più spazio alle tracce occupate. Con molti item il risultato può sembrare identico: per osservare la differenza usa pochi item e un contenitore ampio.
Scelte di utilizzo e limiti
Ripetizione adattiva con auto-fit e auto-fill: progetto e verifica.
Il minimo rimane importante: se il contenitore è più stretto di 12rem, la traccia può causare overflow. Una strategia più robusta può usare min(100%, 12rem) come minimo. La griglia adattiva non garantisce che immagini o stringhe dentro gli item si adattino automaticamente: cura anche i contenuti.
Esempio commentato
Ripetizione adattiva con auto-fit e auto-fill: 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>Griglie adattive con auto-fit e auto-fill</title>
<link rel="stylesheet" href="stile.css">
</head>
<body>
<div class="griglia"><article>Uno</article><article>Due</article></div>
</body>
</html>
File stile.css
.griglia { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: 1rem; }
.griglia > article { padding: 1rem; border: 1px solid navy; overflow-wrap: anywhere; }
Risultato nel browser
Le due schede possono espandersi nelle tracce occupate. Il minimo non supera il 100% del contenitore stretto.
| Proprietà | Valore nell’esempio | Significato |
|---|---|---|
display | grid | Tipo di scatola e contesto di layout. |
grid-template-columns | repeat(auto-fit, minmax(min(100%, 12rem), 1fr)) | Definizione delle tracce di colonna esplicite. |
gap | 1rem | Distanza fra elementi o tracce nel layout pertinente. |
padding | 1rem | Spazio interno fra contenuto e bordo. |
border | 1px solid navy | Abbreviazione per spessore, stile e colore del bordo. |
overflow-wrap | anywhere | Opportunità di interruzione per stringhe lunghe. |
LABORATORIO
Sperimentare: Ripetizione adattiva con auto-fit e auto-fill
Le due schede possono espandersi nelle tracce occupate. Il minimo non supera il 100% del contenitore stretto.
Obiettivo: Comprendere e applicare ripetizione adattiva con auto-fit e auto-fill attraverso esempi e verifica nel browser.
Software: editor di testo e browser con DevTools; Tempo: 15 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: Su una finestra ampia sostituisci auto-fit con auto-fill e osserva l’overlay.
- 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.
auto-fill può mantenere colonne vuote; auto-fit può collassarle facendo crescere quelle occupate.
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 | auto-fill può mantenere colonne vuote; auto-fit può collassarle facendo crescere quelle occupate. |
| 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 quattro schede senza modificare la definizione delle colonne.
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>Tre</article>
<article>Quattro</article>
<article>Cinque</article>
<article>Sei</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
Ripetizione adattiva con auto-fit e auto-fill: interpretazione e applicazione.
Seleziona una domanda per visualizzare la risposta e confrontarla con la tua.
1. Quale valore può collassare le tracce vuote della ripetizione? ▾
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.