Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Alineación de elementos en el eje transversal CSS: Fundamentos de Flex

Alinear elementos en el eje transversal es clave para crear diseños equilibrados. Con align-items, podemos controlar su posición dentro del contenedor flexible de forma sencilla y eficiente. Veamos cómo funciona.

¿Cómo usar align-items?

Cuando un elemento es un contenedor flex, sus elementos internos pueden alinearse de diferentes formas en el eje transversal (también llamado eje secundario). Esto se logra con la propiedad align-items.

Para entenderlo mejor, crearemos un contenedor con varios bloques de diferente tamaño dentro:

Ahora veamos los distintos valores que podemos usar en align-items.

align-items: stretch (valor por defecto)

Por defecto, los elementos internos se expanden para ocupar toda la altura disponible dentro del contenedor. Esto ocurre solo si los elementos no tienen una altura establecida manualmente.

.contenedor {
  display: flex;
  align-items: stretch; /* Valor por defecto */
  height: 200px;
  background-color: lightgray;
}

.item {
  flex: 1;
  background-color: lightblue;
  margin: 5px;
}

Si uno de los elementos tiene una altura específica, los demás lo seguirán ajustándose automáticamente.

align-items: flex-start

Con este valor, los elementos se alinean en la parte superior (inicio del eje transversal).

Ejemplo:

align-items: center

Este valor centra los elementos en el eje transversal, sin importar su altura.

.contenedor {
  display: flex;
  align-items: center;
}

Ejemplo:

align-items: flex-end

Aquí los elementos se alinean en la parte inferior del contenedor.

.contenedor {
  display: flex;
  align-items: flex-end;
}

Ejemplo:

align-items: baseline

Este valor alinea los elementos según la línea base del texto dentro de ellos. Es útil cuando los textos tienen distintos tamaños y queremos que las letras se alineen correctamente.

La siguiente imagen muestra cómo se alinea la línea base:

Línea de base de la fuente

Ejemplo:


Resumen

  • align-items: stretch (por defecto) hace que los elementos se expandan para llenar el contenedor.
  • align-items: flex-start alinea los elementos en la parte superior del contenedor.
  • align-items: center centra los elementos en el eje transversal.
  • align-items: flex-end alinea los elementos en la parte inferior del contenedor.
  • align-items: baseline alinea los textos de los elementos a lo largo de su línea base.

Materiales adicionales

  1. Webinar de Códica 🎬 Diseños flexibles con Flexbox

¿Dudas sobre la lección? Pregunta en el chat del grupo

Te responderán tu mentor o tus compañeros.

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY