JSFiddle - React, Tailwind, and code Playground
by Jonny
HTML
<div class="blocks">
<a href="#" class="block">
<img src="http://lorempixel.com/200/200?1" alt="">
<div class="caption">Box 1</div>
</a>
<a href="#" class="block">
<img src="http://lorempixel.com/200/200?2" alt="">
<div class="caption">Box 2</div>
</a>
<a href="#" class="block">
<img src="http://lorempixel.com/200/200?3" alt="">
<div class="caption">Box 3</div>
</a>
</div>
CSS
.blocks {
width: 100%;
text-align: center;
}
.block {
position: relative;
display: inline-block;
}
.block img {
}
.block .caption {
position: absolute;
display: block;
width: 100%;
line-height: 200px; /* height of box */
background: rgba(0, 0, 0, 0.40);
box-shadow: 0 0 50px rgba(0, 0, 0, 0.70) inset;
z-index: 100;
top: 0;
right: 0;
left: 0;
color: #FFF;
font-size: 16px;
font-weight: bold;
transition: 0.25s all ease;
opacity: 0;
}
.block .caption:hover {
opacity: 1;
}