Propiedad align-content

La propiedad align-content establece la alineación de los elementos a lo largo del eje transversal para contenedores flex y a lo largo del eje vertical para grid. Se aplica al elemento padre.

Sintaxis

cssselector {
  align-content: flex-start | flex-end | center | space-between | space-around;
}

Valores

Valor Descripción
flex-start Los bloques están pegados al inicio del eje transversal (vertical).
flex-end Los bloques están pegados al final del eje transversal (vertical).
center Los bloques están centrados en el eje transversal (vertical).
space-between Los bloques se distribuyen a lo largo del eje transversal (vertical), donde el primer elemento está pegado al inicio del eje, y el último al final.
space-around Los bloques se distribuyen a lo largo del eje transversal (vertical), donde entre el primer bloque y el inicio del eje, y entre el último bloque y el final del eje, hay un espacio igual al que hay entre el resto de los bloques.
Sin embargo, no son iguales, como podría parecer: los espacios se suman y entre dos bloques la distancia es el doble que entre un bloque y el inicio/final del eje.

Ejemplo . Valor flex-start

En este ejemplo, el eje a lo largo del cual se realiza la alineación está dirigido de arriba a abajo, es decir, es transversal. Como se puede ver en el resultado obtenido, todos nuestros elementos están pegados a su parte superior:

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;
}

Результат:

Ejemplo . Valor flex-end

En este ejemplo, los bloques están pegados al lado inferior del eje transversal, ya que la propiedad align-content está establecida en el valor 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;
}

Результат:

Ejemplo . Valor center

Ahora los bloques están alineados al centro del eje transversal:

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;
}

Результат:

Alineación al inicio del eje vertical en grid

Establezcamos la alineación para nuestros elementos en grid al inicio del eje vertical:

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;
}

Результат:

Alineación al centro del eje vertical en grid

Y ahora establezcamos la alineación de los elementos al centro del eje vertical:

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;
}

Результат:

Alineación al final del eje vertical en grid

Establezcamos la alineación de los elementos al final del eje vertical:

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;
}

Результат:

Véase también

  • propiedad flex-direction,
    que establece la dirección de los ejes de los contenedores flex
  • propiedad justify-content,
    que establece la alineación a lo largo del eje principal
  • propiedad align-items,
    que establece la alineación a lo largo del eje transversal
  • propiedad flex-wrap,
    que establece el ajuste de línea múltiple de los contenedores flex
  • propiedad flex-flow,
    abreviatura para flex-direction y flex-wrap
  • propiedad order,
    que establece el orden de los bloques flex
  • propiedad align-self,
    que establece la alineación de un solo bloque
  • propiedad place-content,
    que establece la alineación a lo largo de los ejes principal y transversal