Deseo centrar verticalmente un Div dentro de otro, pero no lo consigo :\ 
 
La cuestión es que el div no tendrá tamaño fijo debido a que depende del contenido que se le introduzca, así que no puedo utilizar line-height, ni mucho menos centrarlo asignándole valores al top. 
Por otro lado, está la propiedad vertical-align, pero para ello debo asignarle al div display: table-cell y al momento de hacerlo se descuadra todo:    
Código HTML:
Ver originalhtml, body {
    margin: 0;
    color: #000;
}
 
#contenedor{
    height: 100%;
    background: #aaa;
    text-align: center;
}
 
#mensaje {
    background: #ccc;
}
 
 
        Texto 6.