SergejDudn, Ага. setTimeout() использовать для этой задачи - костыль. Потому что пользователь может поменять transition-duration, а твой setTimeout выставленный в 50ms об этом и не узнает. Нужно подписываться на transitionend и после этого закрывать блок через display: none; Просто ищу адекватный и грамотный пример.
Да, верно, придется задавать вручную, но достаточно много плагинов для модалок, у которых это время задается в настройках, тот же MagneficPopup.
Но можно в data атрибут вынести эту задержку или еще куда-нибудь