Proprietà align-content
La proprietà align-content definisce l'allineamento
degli elementi lungo l'asse trasversale per i contenitori flex
e lungo l'asse verticale per le griglie.
Si applica all'elemento genitore.
Sintassi
selettore {
align-content: flex-start | flex-end | center | space-between | space-around;
}
Valori
| Valore | Descrizione |
|---|---|
flex-start |
Gli elementi sono allineati all'inizio dell'asse trasversale (verticale). |
flex-end |
Gli elementi sono allineati alla fine dell'asse trasversale (verticale). |
center |
Gli elementi sono centrati lungo l'asse trasversale (verticale). |
space-between |
Gli elementi sono distribuiti lungo l'asse trasversale (verticale), con il primo elemento allineato all'inizio dell'asse e l'ultimo alla fine. |
space-around |
Gli elementi sono distribuiti lungo l'asse trasversale (verticale),
con lo stesso spazio tra il primo elemento e l'inizio dell'asse,
tra l'ultimo elemento e la fine dell'asse,
e tra gli elementi stessi.
Tuttavia, non sono uguali, come potrebbe sembrare: gli spazi si sommano e tra due elementi la distanza è due volte maggiore rispetto a quella tra un elemento e l'inizio/fine dell'asse. |
Esempio . Valore flex-start
In questo esempio, l'asse lungo il quale avviene l'allineamento è orientato dall'alto verso il basso, cioè è trasversale. Come si può vedere dal risultato ottenuto, tutti i nostri elementi sono allineati alla sua parte superiore:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: flex;
align-content: flex-start;
flex-wrap: wrap;
height: 200px;
border: 1px solid #696989;
}
#parent > div {
width: 100px;
height: 50px;
border: 1px solid #696989;
}
:
Esempio . Valore flex-end
In questo esempio, gli elementi sono allineati al lato inferiore
dell'asse trasversale, poiché la proprietà align-content è impostata sul valore
flex-end:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: flex;
align-content: flex-end;
flex-wrap: wrap;
height: 200px;
border: 1px solid #696989;
}
#parent > div {
width: 100px;
height: 50px;
border: 1px solid #696989;
}
:
Esempio . Valore center
Ora gli elementi sono allineati al centro dell'asse trasversale:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: flex;
align-content: center;
flex-wrap: wrap;
height: 200px;
border: 1px solid #696989;
}
#parent > div {
width: 100px;
height: 50px;
border: 1px solid #696989;
}
:
Allineamento all'inizio dell'asse verticale nella griglia
Impostiamo l'allineamento per i nostri elementi nella griglia all'inizio dell'asse verticale:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: grid;
align-content: start;
grid-template-columns: 100px 100px;
gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
:
Allineamento al centro dell'asse verticale nella griglia
Ora impostiamo l'allineamento degli elementi al centro dell'asse verticale:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: grid;
align-content: center;
grid-template-columns: 100px 100px;
gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
:
Allineamento alla fine dell'asse verticale nella griglia
Impostiamo l'allineamento degli elementi alla fine dell'asse verticale:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
</div>
#parent {
display: grid;
align-content: end;
grid-template-columns: 100px 100px;
gap: 10px;
padding: 10px;
border: 2px solid #696989;
height: 200px;
width: 400px;
}
#parent > div {
gap: 10px;
padding: 10px;
box-sizing: border-box;
border: 1px solid #696989;
}
:
Vedi anche
-
proprietà
flex-direction,
che definisce la direzione degli assi nei contenitori flex -
proprietà
justify-content,
che definisce l'allineamento lungo l'asse principale -
proprietà
align-items,
che definisce l'allineamento lungo l'asse trasversale -
proprietà
flex-wrap,
che definisce l'avvolgimento multilinea dei contenitori flex -
proprietà
flex-flow,
scorciatoia per flex-direction e flex-wrap -
proprietà
order,
che definisce l'ordine degli elementi flex -
proprietà
align-self,
che definisce l'allineamento di un singolo elemento -
proprietà
place-content,
che definisce l'allineamento lungo gli assi principale e trasversale