2009-12-23 18 views
79

¿Cómo centro un div horizontalmente dentro de su elemento primario div con CSS?Cómo centrar horizontalmente div dentro del elemento primario div

<div id='parent' style='width: 100%;'> 
<div id='child' style='width: 50px; height: 100px;'>Text</div> 
</div> 
+0

aquí una Re dos métodos simples para centrar div en divs, verticalmente, horizontalmente o ambos (CSS puro): http://stackoverflow.com/a/31977476/3597276 –

Respuesta

114

estoy asumiendo el div padre no tiene anchura o una anchura de ancho, y el div niño tiene una anchura menor. Lo siguiente establecerá el margen para la parte superior e inferior a cero, y los lados para ajustar automáticamente. Esto centra el div.

div#child { 
    margin: 0 auto; 
} 
+0

gracias por sus explicaciones – Eagle

+0

@Mark. gran idea. +1 – Bakhtiyor

+0

@Mark. ¿Sabes cómo hacerlo funcionar en IE6? IE6 realmente apesta mucho, pero todavía hay algunas personas que lo usan. – Bakhtiyor

3
<div id='child' style='width: 50px; height: 100px; margin:0 auto;'>Text</div> 
5
<div id='parent' style='width: 100%;text-align:center;'> 
<div id='child' style='width:50px; height:100px;margin:0px auto;'>Text</div> 
</div> 
+0

Esta solución es compatible con IE 6, pero no se olvide de agregar 'text-align: left;' al #child div – Moak

+0

'text-align: center' al div infantil o al div principal? –

+0

al padre div – Victor

3

Usted puede utilizar el valor "auto" para los márgenes izquierdo y derecho para que el navegador distribuir el espacio disponible igualmente en ambos lados de la div interior:

<div id='parent' style='width: 100%;'> 
    <div id='child' style='width: 50px; height: 100px; margin-left: auto; margin-right: auto'>Text</div> 
</div> 
1

Justo fuera de interés, si se desea centrar dos o más divs (por lo que están al lado del otro en el centro), entonces aquí es cómo hacerlo:

<div style="text-align:center;"> 
    <div style="border:1px solid #000; display:inline-block;">Div 1</div> 
    <div style="border:1px solid red; display:inline-block;">Div 2</div> 
</div> 
Cuestiones relacionadas