¡La forma más limpia y sencilla de hacer esto es usar Flexbox! Lo siguiente alineará verticalmente un modal Bootstrap 3 en el centro de la pantalla y es mucho más limpio y simple que todas las otras soluciones publicadas aquí:
body.modal-open .modal.in {
display: flex !important;
align-items: center;
}
NOTA: Si bien esta es la solución más simple, es posible que no funcione para todos debido al soporte del navegador: http://caniuse.com/#feat=flexbox
Parece que (por lo general) IE se queda atrás. En mi caso, todos los productos que desarrollo para mí o para mis clientes son IE10 +. (No tiene sentido desde el punto de vista comercial invertir tiempo de desarrollo en versiones anteriores de IE cuando podría usarse para desarrollar realmente el producto y sacar el MVP más rápido). Esto ciertamente no es un lujo que todos tienen.
He visto sitios más grandes detectar si se admite o no flexbox y aplicar una clase al cuerpo de la página, pero ese nivel de ingeniería de front-end es bastante robusto, y aún necesitaría un respaldo.
Animaría a las personas a adoptar el futuro de la web. Flexbox es increíble y deberías comenzar a usarlo si puedes.
PD: este sitio realmente me ayudó a comprender flexbox como un todo y aplicarlo a cualquier caso de uso: http://flexboxfroggy.com/
EDITAR: en el caso de dos modales en una página, esto debería aplicarse a .modal.in
.modal.fade.in
también