Flexbox a fondo

Ya lo tocaste de pasada. Ahora la herramienta que más vas a usar para ordenar cosas, explicada de una vez por todas.

Flexbox tiene dos partes: el contenedor, con display: flex, y sus elementos hijos directos, que se acomodan solos siguiendo las reglas del contenedor.

justify-content ordena en la dirección en la que van los elementos —por defecto, horizontal—. Es la propiedad que más vas a tocar.

align-items ordena en la dirección perpendicular: si justify-content mueve horizontal, align-items mueve vertical.

Con flex-grow en un elemento hijo, le dices cuánto del espacio sobrante debe tomar, en proporción a los demás.

El segundo item, con flex-grow: 2, toma el doble de espacio sobrante que el primero. El tercero, sin flex-grow, se queda con su tamaño natural. Este es el truco detrás de barras de navegación donde un solo elemento "empuja" a los demás hacia los bordes.

Cómo activar flexbox, ordenar en el eje principal con justify-content, en el eje cruzado con align-items, y repartir espacio sobrante con flex-grow.

Ahora, algo que ya usa este mismo sitio: variables CSS y cómo detectar el modo oscuro del visitante.