Centrarse verticalmente en la ventana gráfica utilizando CSS

Estoy buscando centrar verticalmente una<div> en la ventana gráfica (ventana del navegador) sin recurrir a Javascript (solo HTML y CSS puro). Tengo varias restricciones:

Losdiv debe estar centrado verticalmente en la ventana gráfica. Los métodos que he visto solo se centran en el soporte dentro de otra<div>, que no es lo que quiero.La altura de ladiv no es conocido

Otras restricciones:

Losdiv debe estar alineado a la derecha.Losdiv tiene un ancho constante.Losdiv debe admitir relleno.Otros elementos se colocarán en la página web. Losdiv actúa como un menú.El div debe admitir un color / imagen de fondo.

Esto me acerca a lo que quiero, pero no exactamente:

#nav {
    position: fixed;
    right: 0;
    top: 50%;
}

Sin embargo, elparte superio de la navegación está en el medio, no lamedi de la navegación.

ay alguna técnica que me permite centrar midiv con estas limitaciones?

Respuestas a la pregunta(3)

Su respuesta a la pregunta