JSFiddle - React, Tailwind, and code Playground

HTML

<div id="overlay">
    <div id="overlay-content">
        <h1>Hello, World!</h1>
    </div>
</div>

CSS

#overlay {
    display: none;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: auto;
    background-color: transparent grey;
}

#overlay-content {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    width: 800px;
    height: 600px;
    padding: 20px;
    background: green
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -400px;
    margin-top: -300px;
    color: #fff;
}

JavaScript

$('#overlay').css({'opacity': 0, 'display': "block"}).animate({'opacity': 1}, 1000).on("click", function() {
    $('#overlay').animate({'opacity': 0}, 1000);
});