Grid Layout in CSS
Il Grid Layout offre un sistema di layout basato su griglia, con righe e colonne, semplificando la progettazione di pagine web senza dover utilizzare float e posizionamenti.
ProprietĂ Display Grid
Un elemento HTML diventa un contenitore a griglia quando la sua proprietĂ di visualizzazione viene impostata su grid o inline-grid.
Tutti i figli diretti del contenitore a griglia diventano automaticamente elementi di griglia.
Spaziatura nella Griglia
Gli spazi tra ciascuna colonna/riga sono chiamati gap.
Puoi regolare la dimensione del gap utilizzando una delle seguenti proprietĂ :
- column-gap
- row-gap
- gap
La proprietĂ column-gap imposta lo spazio tra le colonne:
La proprietĂ row-gap imposta lo spazio tra le righe:
La proprietà gap è una proprietà abbreviata per le proprietà row-gap e column-gap:
La proprietà gap può essere utilizzata anche per impostare sia lo spazio tra le righe che tra le colonne in un unico valore:
Linee della Griglia
Le linee tra le colonne sono chiamate linee di colonna, mentre le linee tra le righe sono chiamate linee di riga.
Riferisci al numero di linea quando posizioni un elemento di griglia in un contenitore di griglia:
Posiziona un elemento di griglia alla colonna di linea 1 e lascialo terminare alla colonna di linea 3:
Posiziona un elemento di griglia alla riga di linea 1 e lascialo terminare alla riga di linea 3:
Contenitore della Griglia
Per fare in modo che un elemento HTML si comporti come un contenitore di griglia, è necessario impostare la proprietà di visualizzazione su grid o inline-grid.
I contenitori di griglia sono composti da elementi di griglia, posizionati all’interno di colonne e righe.
La ProprietĂ grid-template-columns
La proprietà grid-template-columns definisce il numero di colonne nel tuo layout a griglia e può definire la larghezza di ciascuna colonna.
Il valore è una lista separata da spazi, in cui ogni valore definisce la larghezza della rispettiva colonna.
Se desideri che il tuo layout a griglia contenga 4 colonne, specifica la larghezza delle 4 colonne o “auto” se tutte le colonne dovrebbero avere la stessa larghezza.
Crea una griglia con 4 colonne:
Nota che se hai piĂą di 4 elementi in una griglia a 4 colonne, la griglia aggiungerĂ automaticamente una nuova riga per posizionare gli elementi.
La proprietà grid-template-columns può anche essere utilizzata per specificare la larghezza delle colonne.
Imposta una dimensione per le 4 colonne:
La ProprietĂ grid-template-rows
La proprietĂ grid-template-rows
definisce l’altezza di ogni riga.
Il valore è una lista separata da spazi, in cui ogni valore definisce l’altezza della rispettiva riga:
La ProprietĂ justify-content
La proprietĂ justify-content
viene utilizzata per allineare l’intera griglia all’interno del contenitore.
La larghezza totale della griglia deve essere inferiore alla larghezza del contenitore affinché la proprietà justify-content abbia effetto.
La ProprietĂ align-content
La proprietĂ align-content
viene utilizzata per allineare verticalmente l’intera griglia all’interno del contenitore.
L’altezza totale della griglia deve essere inferiore all’altezza del contenitore affinché la proprietà align-content abbia effetto.
Elementi Celle
Un contenitore a griglia contiene elementi di griglia o celle.
Per impostazione predefinita, un contenitore ha un elemento di griglia per ogni colonna, in ogni riga, ma è possibile stilizzare gli elementi di griglia in modo che si estendano su più colonne e/o righe.
La ProprietĂ grid-column:
La proprietĂ grid-column
definisce su quale/i colonna/e posizionare un elemento.
La proprietà grid-column è una proprietà abbreviata per le proprietà grid-column-start e grid-column-end.
Si definisce dove inizia l’elemento e dove finisce l’elemento.
Per posizionare un elemento, puoi fare riferimento ai numeri di linea o utilizzare la parola chiave “span” per definire quante colonne l’elemento occuperà .
Fai iniziare “item1” dalla prima colonna e finisci prima della colonna di linea 5:
Fai iniziare “item1” dalla prima colonna e occupa 3 colonne:
Fai iniziare “item2” dalla seconda colonna e occupa 3 colonne:
La ProprietĂ grid-row:
La proprietà grid-row definisce su quale riga posizionare un elemento. La proprietà grid-row è una proprietà abbreviata per le proprietà grid-row-start e grid-row-end.
Si definisce dove inizia l’elemento e dove finisce l’elemento.
Per posizionare un elemento, puoi fare riferimento ai numeri di linea o utilizzare la parola chiave “span” per definire quante righe l’elemento occuperà :
Fai iniziare “item1” alla prima riga finisci alla linea di riga 4:
Fai iniziare “item1” alla riga 1 e occupa 2 righe:
La ProprietĂ grid-area
La proprietà grid-area può essere utilizzata come proprietà abbreviata per le proprietà grid-row-start, grid-column-start, grid-row-end e grid-column-end.
Fai iniziare “item8” alla linea di riga 1 e alla colonna di linea 2, e finisci alla linea di riga 5 e alla colonna di linea 6:
Fai iniziare “item8” alla linea di riga 2 e alla colonna di linea 1, e occupa 2 righe e 3 colonne:
Nominare gli Elementi della Griglia
La proprietà grid-area può anche essere utilizzata per assegnare nomi agli elementi di griglia.
Gli elementi di griglia con nomi possono essere riferiti dalla proprietĂ grid-template-areas del contenitore di griglia.
L’elemento Item1 ottiene il nome “Area” e occupa tutte e cinque le colonne in un layout a cinque colonne:
Le colonne in ciascuna riga sono definite all’interno degli apici, separate da uno spazio.
Nota che un punto rappresenta un elemento di griglia senza nome.
Per definire due righe, definisci la colonna della seconda riga all’interno di un altro set di apici:
Assegna nomi a tutti gli elementi e crea un modello di pagina web pronto all’uso: