Cómo centrar un div en CSS (Flexbox)
Cree visualmente un diseño de caja flexible CSS: dirección flexible, justificación de contenido, alineación de elementos, envoltura flexible y espacio en el contenedor, además de crecimiento flexible, reducción flexible y base flexible por niño, todo con una vista previa en vivo y CSS copiable.
Resultado
Aquí está la respuesta directa a la pregunta más frecuente en CSS: para centrar un div, coloque display: flex, justify-content: center y align-items: center en su padre. Eso es todo: tres declaraciones en el contenedor y el niño se sienta perfectamente centrado tanto horizontal como verticalmente en su interior, de cualquier tamaño. Esta página abre el generador con exactamente esa combinación ya aplicada, por lo que la vista previa a continuación lo muestra funcionando en tres cuadros numerados en este momento.
Antes de flexbox, centrar un div necesitaba trucos: margin: 0 auto solo se centraba horizontalmente y solo funcionaba en un bloque de ancho fijo; centrado vertical significaba posición: absoluta con márgenes negativos o un truco de transformación, ambos frágiles en el momento en que el contenido cambiaba de tamaño. justify-content maneja el eje principal y align-items maneja el eje transversal; juntos se centran en ambas direcciones independientemente de qué tan alto o ancho sea el niño, que es exactamente la razón por la que este par se convirtió en la respuesta estándar.
Arrastre cualquier control a continuación y observe cómo los tres cuadros de vista previa permanecen centrados a medida que el contenedor cambia de forma, o agregue un espacio entre ellos. Cuando se vea bien, copie el bloque CSS en la parte inferior directamente en su hoja de estilo; se ejecuta de la misma manera en todos los navegadores modernos, no se necesita biblioteca.