2010-05-11 12 views
33

Me gustaría que el texto se centre en la parte inferior de la pantalla.Posicionamiento absoluto y alineación de texto

Intenté this, pero no funciona. Parece que el posicionamiento absoluto está en conflicto con la alineación.

¿Cómo podría lograr esta sencilla tarea?

+0

la última respuesta aceptada, que es simplemente repite otra soluciones. Lol. – Happy

+0

posible duplicado de [Alineación de centro en una div posición absolutamente posicionada] (http://stackoverflow.com/questions/252856/center-align-on-a-absolutely-positioned-div) –

Respuesta

101

El div no ocupa todo el espacio horizontal disponible cuando se encuentra absolutamente. establecer explícitamente el ancho a 100% va a resolver el problema:

HTML

<div id="my-div">I want to be centered</div>​ 

CSS

#my-div { 
    position: absolute; 
    bottom: 15px; 
    text-align: center; 
    width: 100%; 
} 

+3

Eso es ridículamente simple ... pero ... Encontré esta publicación buscando la respuesta a esta pregunta. ¡Gracias! – user1167442

+0

También puede agregar 'left: 0;' si no funciona – Edward

2

Tal vez la especificación de un ancho funcionaría. Cuando position:absolute un elemento, su ancho se reducirá a los contenidos que creo.

16

Prueba esto:

http://jsfiddle.net/HRz6X/2/

es necesario agregar left: 0 y right: 0 (no es compatible con IE6). O especificar un ancho

+0

no funciona en IE – Happy

+2

Funciona en IE8 e IE7. Si está utilizando IE6, necesita actualizar. – Eric

+0

¿Estás seguro de IE7?) IE6/7 implicado – Happy

4

Esto debería funcionar:

#my-div { left: 0; width: 100%; } 
Cuestiones relacionadas