Eso se hace poniendo una capa con posicion absoluta, un tamaño que ocupe toda la pantalla, le cambias la transparencia (en internet explorer con alpha y en los demás con opacity) y con javascript muestras una capa con posicion absoluta que estaba oculta y con un z-index mayor.
En mi web lo tengo hecho, echale un vistazo al código fuente
http://www.alberizo.com/#fotografia/73
Y si te lo quieres ahorrar hay muchas librerias para hacerlo, busca en google "javascript lightbox"