Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/11/2012, 21:45
Avatar de C2am
C2am
 
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 3 meses
Puntos: 306
Respuesta: Alinear texto de un div abajo

Hola
Una posible solución:

Piensa que la alineación vertical css solo funciona con elementos de linea, y que tenga definida la altura de linea (line-height), ya esta altura hará de margen superior e inferior sobre la cual se alineará o posicionará.

Ahora, si defines dicha altura de linea en el div te encontrarás con que solo podrás colocar una linea (y en tu caso tienes dos debido al <br/>)

Entonces, una forma de solucionarlo es utilizar dos cajas (un div, y otra caja dentro que puede ser otro div, un p, span, etc., aplicandole la propiedad display:inline-block para que se comporte como un elemento de linea y bloque.

Al div contenedor le fijas el line-heigth igual a la altura del div, para poder alinear la caja interior con respecto a esta altura.

Luego a la caja interior, le defines como quieres que se posicione con respecto al eje y (altura): vertical-align:bottom - top - middle etc. Y vuelves a definir el line-height porque sino mantendrá el del padre (line-height:2em)

Código HTML:
Ver original
  1. <div class="alt4"><span>Nuestros<br />Trabajos</span></div>

Código CSS:
Ver original
  1. .alt4 {
  2.     background-color: #31b3e7;
  3.     height: 255px;
  4.     line-height:255px; /* igual a height*/
  5.     margin-top: 5px;
  6.     text-align:center;
  7. }
  8. span {
  9.     border:1px solid #ddd;
  10.     display:inline-block;
  11.     line-height:2em; /*vuelves definirlo con una altura necesaria para contener el texto */
  12.     vertical-align:bottom;
  13. }

El ejemplo para puedas ver su funcionamiento y probar alternativas.

Saludos
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--