Para alinear elementos hijos (elementos flexibles) dentro de un contenedor Flexbox, CSS te ofrece un conjunto de propiedades muy potente que se aplican principalmente al elemento contenedor (el padre que tiene display: flex; o display: inline-flex;). Las propiedades clave para la alineación son:
justify-content:flex-direction.flex-direction es row (por defecto, los ítems se disponen en una fila horizontal), justify-content controlará la alineación horizontal.flex-direction es column (los ítems se disponen en una columna vertical), justify-content controlará la alineación vertical.flex-start: Alinea los ítems al inicio del eje principal.flex-end: Alinea los ítems al final.center: Centra los ítems en el eje principal.space-between: Distribuye el espacio uniformemente entre los ítems; el primero está al inicio y el último al final.space-around: Distribuye el espacio uniformemente alrededor de cada ítem (los extremos tienen la mitad de espacio que entre ítems).space-evenly: Distribuye el espacio uniformemente entre cada ítem y en los extremos.align-items:flex-direction es row, align-items controlará la alineación vertical.flex-direction es column, align-items controlará la alineación horizontal.stretch (valor por defecto): Estira los ítems para que ocupen todo el espacio disponible en el eje transversal (si no tienen un tamaño definido en ese eje).flex-start: Alinea los ítems al inicio del eje transversal.flex-end: Alinea los ítems al final del eje transversal.center: Centra los ítems en el eje transversal.baseline: Alinea los ítems según su línea base de texto.align-self:align-items especificado en el contenedor para un ítem específico. Acepta los mismos valores que align-items, más auto (que hereda el valor de align-items del padre).align-content:flex-wrap es wrap o wrap-reverse y los ítems ocupan más de una línea).justify-content (flex-start, flex-end, center, space-between, space-around, stretch).Ejemplo simple para centrar un único hijo:
.contenedor-padre {
display: flex;
height: 300px; /* Necesario para que el centrado vertical sea visible */
width: 300px; /* Necesario para que el centrado horizontal sea visible */
border: 1px solid #ccc; /* Para visualización */
/* Centrado horizontal (en el eje principal por defecto) */
justify-content: center;
/* Centrado vertical (en el eje transversal por defecto) */
align-items: center;
}
.elemento-hijo {
padding: 20px;
background-color: lightblue;
}Lenguaje del código: PHP (php)