в css + js могёшь? общая схема такая, выводишь div с помощью стилей таким образом чтобы он занимал весь экран, был черного цвета и полупрозрачным. а поверх этого дива с помощью тех же стилей выводишь другой див с нужным тебе контентом