Aquí hay dos métodos simples para centrar divs dentro de divs, verticalmente, horizontalmente o ambos (CSS puro): stackoverflow.com/a/31977476/3597276
Michael Benjamin
Respuestas:
158
Supongo que el div principal no tiene ancho o un ancho ancho, y el div secundario tiene un ancho más pequeño. Lo siguiente establecerá el margen de la parte superior e inferior en cero, y los lados se ajustarán automáticamente. Esto centra el div.
@Marca. ¿Sabes cómo hacer que funcione en IE6? IE6 realmente apesta mucho, pero todavía hay algunas personas que lo usan.
Bakhtiyor
@Bakhtiyor: que yo recuerde, lo hace. ¿Qué problemas estás viendo? es posible que desee abrir una nueva pregunta si hay algún problema específico que no se haya abordado antes. Sin embargo, no tengo acceso a IE6 para consultar.
Mark Embling
3
@Bakhtiyor: de hecho, habiéndolo pensado, creo que en IE.old también debes configurar text-align: center;el parentdiv y luego volver a configurarlo a la izquierda (o lo que sea) para el childuno. No estoy seguro si ese problema afecta a IE6 ...
Mark Embling
@Mark & @Bakhtiyor, por alguna razón, mi childdiv aparentemente se movió hacia la izquierda, en comparación con los navegadores que cumplen con los estándares, en todas las versiones de IE que verifiqué (IE6-8). Y text-align: center;por el parenty text-align: left;por el childarreglado para todas esas versiones.
Puede usar el valor "auto" para los márgenes izquierdo y derecho para permitir que el navegador distribuya el espacio disponible por igual en ambos lados del div interno:
Respuestas:
Supongo que el div principal no tiene ancho o un ancho ancho, y el div secundario tiene un ancho más pequeño. Lo siguiente establecerá el margen de la parte superior e inferior en cero, y los lados se ajustarán automáticamente. Esto centra el div.
fuente
text-align: center;
elparent
div y luego volver a configurarlo a la izquierda (o lo que sea) para elchild
uno. No estoy seguro si ese problema afecta a IE6 ...child
div aparentemente se movió hacia la izquierda, en comparación con los navegadores que cumplen con los estándares, en todas las versiones de IE que verifiqué (IE6-8). Ytext-align: center;
por elparent
ytext-align: left;
por elchild
arreglado para todas esas versiones.fuente
text-align:left;
al divtext-align:center
al div hijo o al div padre?Solo por interés, si desea centrar dos o más divs (para que estén uno al lado del otro en el centro), aquí le mostramos cómo hacerlo:
fuente
Puede usar el valor "auto" para los márgenes izquierdo y derecho para permitir que el navegador distribuya el espacio disponible por igual en ambos lados del div interno:
fuente
fuente