JSFiddle - React, Tailwind, and code Playground
by NOVUSIDEA
HTML
<ul>
<li>
<a href="#">
<img src="//lorempixel.com/400/400/food/1" />
<div>
<h3>Headline</h3>
<p>Some little short tiny text.</p>
</div>
</a>
</li>
<li>
<a href="#">
<img src="//lorempixel.com/400/400/food/2" />
<div>
<h3>Headline</h3>
<p>Some little short tiny text.</p>
</div>
</a>
</li>
<li>
<a href="#">
<img src="//lorempixel.com/400/400/food/3" />
<div>
<h3>Headline</h3>
<p>Some little short tiny text.</p>
</div>
</a>
</li>
</ul>
CSS
ul {
padding: 20px;
}
ul li {
float: left;
width: 33.33333333333%;
padding: 20px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul li a {
display: block;
text-align: center;
text-decoration: none;
position: relative;
overflow: hidden;
border-radius: 1000px;
padding: 8px;
background: #444;
}
ul li a > div {
background: #444;
background: rgba(0,0,0,0.8);
color: #fff;
padding: 10px 25px;
font-family: Verdana;
line-height: 26px;
position: absolute;
left: 0;
right: 0;
top: 50%;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
opacity: 1;
}
ul li a > div > h3 {
font-size: 26px;
}
ul li a:hover > div {
top: 100%;
opacity: 0;
}
ul li a img {
width: 100%;
height: auto;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-radius: 1000px;
display: block;
}
ul li a img:hover {
background: #FACD01;
}