Alineación vertical no funciona en div

Estoy tratando de alinear verticalmente un div pero no funciona en absoluto por alguna razón. ¿Qué estoy haciendo mal?

Nota: No quiero respuestas de posicionamiento absolutas.

El esfuerzo de alineación vertical no funcionó porque la propiedad de vertical-align aplica solo a los elementos en línea y de celda de tabla. ( Consulte la especificación para más detalles .)

Puede alinear la #contactus en la parte inferior del bloque ( body ) que contiene con flexbox .

 body { display: flex; /* convert element to flex container */ flex-direction: column; /* create a vertical alignment for child elements */ justify-content: flex-end; /* align child elements at the end of the container */ border: 1px solid red; height: 500px; } #contactUs { border: 1px solid blue; } 
 
Contact Us

Si solo necesita el texto “Contáctenos” alineado verticalmente, puede establecer #contactUs line-height en 500px.

 line-height:500px;