Si solo tiene que admitir navegadores que admitan transform
(o sus versiones prefijadas de proveedor), use este viejo y extraño truco para alinear elementos verticalmente.
#child {
position: relative;
top: 50%;
transform: translateY(-50%);
}
Si tiene que soportar los navegadores más antiguos, se puede utilizar una combinación de éstos, sino que puede ser un dolor debido a las diferencias en la representación block
vs table
.
#parent {
display: table;
}
#child {
display: table-cell;
vertical-align: middle;
}
Si su altura es fija y que necesita para apoyar a los muy viejos, navegadores molestos ...
#parent {
position: relative;
}
#child {
height: 100px;
position: absolute;
top: 50%;
margin-top: -50px;
}
Si su altura no es fija, hay un workaround.
See it on jsFiddle.
intenté google ...gracias por su ayuda – trrrrrrm
verifique mi respuesta para ver si funciona para usted .. @ra_htial .... sí, una pregunta de hace siglos, pero aún una complicada que debería aclararse – juanm55
posible duplicado de [Cómo centrar verticalmente un div para todos navegadores?] (http://stackoverflow.com/questions/396145/how-to-vertically-center-a-div-for-all-browsers) – Carpetsmoker