4.1 Proprietà grid-column
CSS Grid Layout offre strumenti fantastici per gestire il posizionamento degli elementi nella griglia. Tra gli strumenti principali ci sono le proprietà grid-row
e grid-column
. Queste proprietà permettono agli sviluppatori di specificare esattamente quali righe e colonne devono occupare gli elementi della griglia, garantendo flessibilità e controllo sul layout.
La proprietà grid-column
definisce quali colonne un elemento occuperà all'interno del grid-container.
Sintassi:
.grid-item {
grid-column: start / end;
}
Dove:
start
: linea iniziale della grigliaend
: linea finale della griglia
Esempio 1: Posizionare un elemento in una colonna specifica
In questo esempio l'elemento sarà posizionato tra la seconda e la terza linea della griglia, occupando la seconda colonna:
.grid-item {
grid-column: 2 / 3; /* L'elemento occupa lo spazio tra la seconda e la terza linea della griglia */
}
Esempio 2: Elemento che occupa più colonne
In questo esempio l'elemento occuperà tre colonne, iniziando dalla prima linea e finendo alla quarta linea della griglia:
.grid-item {
grid-column: 1 / 4; /* L'elemento occupa lo spazio dalla prima alla quarta linea della griglia */
}
Esempio 3: Usare span per coprire più colonne
In questo esempio l'elemento occuperà due colonne, a partire dalla posizione corrente:
.grid-item {
grid-column: span 2; /* L'elemento occupa due colonne, a partire dalla posizione corrente */
}
4.2 Proprietà grid-row
La proprietà grid-row
definisce quali righe un elemento occuperà all'interno del grid-container.
Sintassi:
.grid-item {
grid-row: start / end;
}
Dove:
start
: linea iniziale della grigliaend
: linea finale della griglia
Esempio 1: Posizionare un elemento in una riga specifica
In questo esempio l'elemento sarà posizionato tra la prima e la seconda linea della griglia, occupando la prima riga:
.grid-item {
grid-row: 1 / 2; /* L'elemento occupa lo spazio tra la prima e la seconda linea della griglia */
}
Esempio 2: Elemento che occupa più righe
In questo esempio l'elemento occuperà due righe, iniziando dalla seconda linea e finendo alla quarta linea della griglia:
.grid-item {
grid-row: 2 / 4; /* L'elemento occupa lo spazio dalla seconda alla quarta linea della griglia */
}
Esempio 3: Usare span per coprire più righe
In questo esempio l'elemento occuperà tre righe, a partire dalla posizione corrente:
.grid-item {
grid-row: span 3; /* L'elemento occupa tre righe, a partire dalla posizione corrente */
}
Esempio 4. Usare valori negativi
.element {
grid-row: 1 / -1; /* L'elemento inizia alla prima linea e finisce all'ultima */
}
4.3 Combinare le proprietà grid-row e grid-column
Per creare layout più complessi, puoi combinare le proprietà grid-row
e grid-column
per un controllo preciso del posizionamento degli elementi.
Esempio: Layout complesso usando grid-row e grid-column
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Grid Row and Column Example</title>
<style>
.container {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(4, 100px);
gap: 10px;
}
.item1 {
background-color: lightblue;
grid-row: 1 / 3; /* L'elemento occupa la prima e seconda riga */
grid-column: 1 / 3; /* L'elemento occupa la prima e seconda colonna */
}
.item2 {
background-color: lightgreen;
grid-row: 3 / 5; /* L'elemento occupa la terza e quarta riga */
grid-column: 2 / 5; /* L'elemento occupa la seconda, terza e quarta colonna */
}
.item3 {
background-color: lightcoral;
grid-row: 1 / 2; /* L'elemento occupa la prima riga */
grid-column: 3 / 5; /* L'elemento occupa la terza e quarta colonna */
}
</style>
</head>
<body>
<div class="container">
<div class="item1">Item 1</div>
<div class="item2">Item 2</div>
<div class="item3">Item 3</div>
</div>
</body>
</html>
Spiegazione:
- Il container
.container
ha quattro righe e quattro colonne, ognuna delle quali occupa uno spazio uguale - L'elemento
.item1
occupa le prime due righe e le prime due colonne - L'elemento
.item2
occupa la terza e quarta riga e la seconda, terza e quarta colonna - L'elemento
.item3
occupa la prima riga e la terza e quarta colonna
GO TO FULL VERSION