JSFiddle - React, Tailwind, and code Playground
by Christian Sonne
HTML
<div class="category">
<div class="description">
<h2>Swedish nonsense</h2>
<p>Explanation of what is going on</p>
<ul>
<li><a href="#">A button</a></li>
<li><a href="#">Likewise</a></li>
</ul>
</div>
</div>
CSS
.category {
width: 600px;
height: 450px;
background: url(http://lorempixel.com/600/450/abstract/) top left no-repeat;
background-size: cover;
position: relative;
overflow: hidden;
font-family: sans-serif;
}
.description {
box-sizing: border-box;
background: rgba(255,255,255,0.85);
position: absolute;
bottom: 0;
width: 100%;
padding: 1em;
left: 0;
text-align: center;
transform: translateY(110px);
transition-property: transform;
transition-duration: .5s;
}
.category:hover .description {
transform: translateY(0);
}
h2, p {
margin: 0 0 1em 0;
}
li {
margin: 0;
padding: 0;
}
ul {
list-style: none;
display: flex;
margin: 0 -1em;
padding: 0;
}
li {
flex: 1 1 auto;
margin: 0 1em;
}
a {
border-radius: 3px;
padding: 1em;
display: block;
flex: 1 1 auto;
border: 2px #47B8B0 solid;
color: #47B8B0;
text-decoration: none;
font-weight: bold;
}
a:hover {
background: #47B8B0;
color: white;
}