JSFiddle - React, Tailwind, and code Playground
HTML
<div class="modal">I'm the Modal Window!</div>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Porro facere repellat earum veniam minima cum provident voluptate dolorem sapiente deleniti! Nam expedita eaque ullam at voluptas hic iste explicabo praesentium.</p>
<p>Culpa expedita delectus placeat vitae assumenda corporis animi aliquam sed eaque accusamus dolor numquam saepe temporibus aspernatur error ipsa sunt. Officia accusantium veniam quibusdam nisi laudantium consectetur perferendis animi labore?</p>
<p>Temporibus quas alias vel nam. Voluptatem eaque quam maxime architecto quasi officiis dolorum. Esse ab ducimus ut at ullam veritatis fugiat ex nostrum corporis eos illo unde amet! Pariatur commodi.</p>
<p>Optio obcaecati quam laudantium ex architecto debitis earum laboriosam expedita maiores libero. Sint dolores ipsum a nemo suscipit iusto at ea beatae aperiam itaque nam excepturi eum facere maxime ratione.</p>
<p>Voluptatum fugiat quasi ipsam assumenda laborum quaerat commodi numquam rerum. Blanditiis at id consequuntur in nisi corporis doloribus eaque nesciunt harum perferendis atque explicabo suscipit et unde esse adipisci pariatur.</p>
CSS
.modal {
/* some styles to position the modal at the center of the page */
position: fixed;
top: 50%;
left: 50%;
width: 300px;
line-height: 200px;
height: 200px;
margin-left: -150px;
margin-top: -100px;
background-color: #f1c40f;
text-align: center;
/* needed styles for the overlay */
z-index: 10; /* keep on top of other elements on the page */
outline: 9999px solid rgba(0,0,0,0.5);
}
JavaScript
$(document).click(function(e) {
if (!$(e.target).closest('.modal').length) {
alert('click outside!');
}
});