JSFiddle - React, Tailwind, and code Playground
HTML
<div class="container">
<img src="http://media.mydogspace.com.s3.amazonaws.com/wp-content/uploads/2013/08/puppy-500x350.jpg">
<div class="innercontainer">
<p>
This is some text
</p>
</div>
</div>
CSS
.container {
position: relative;
width: 20em;
height: 20em;
overflow: hidden;
border: 1px solid red;
}
.innercontainer {
display: none;
}
.innercontainer {
display: block;
width: 100%;
height: 100px;
background-color: rgba(25,25,25,1);
-webkit-transition: height 2s, background-color 2s, -webkit-transform 2s;
transition: height 2s, background-color 2s, transform 2s;
}
.container:hover .innercontainer {
position: absolute;
top: 5em;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(0,0,0,0.7);
width: 100%;
height: 100%;
transform: translateY(0);
color: #fff;
}
p {
padding: 0.5em 1em;
}