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

cssselettore {
  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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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:

html<div id="parent">
  <div>1</div>
  <div>2</div>
  <div>3</div>
</div>
css#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