JSFiddle - React, Tailwind, and code Playground
by kachibito
HTML
<div class="view">
<img src="http://placehold.it/300x200/ffffff/aaaaaa&text=Sample" />
<div class="overlay">
<a href="#" class="info">children</a>
</div>
</div>
CSS
.view {
width: 300px;
height: 200px;
overflow: hidden;
position: relative;
text-align: center;
background: #fff ;
border:1px solid #eee;
}
.view .overlay {
width: 300px;
height: 200px;
position: absolute;
overflow: hidden;
top: 0;
left: 0;
background-color: rgba(34,34,34,1);
-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
opacity: 0;
-webkit-transition: all 0.2s ease-in 0.2s;
-moz-transition: all 0.2s ease-in 0.2s;
-o-transition: all 0.2s ease-in 0.2s;
-ms-transition: all 0.2s ease-in 0.2s;
transition: all 0.2s ease-in 0.2s;
}
.view img {
display: block;
position: relative;
-webkit-transition: all 0.2s ease-in-out 0.2s;
-moz-transition: all 0.2s ease-in-out 0.2s;
-o-transition: all 0.2s ease-in-out 0.2s;
-ms-transition: all 0.2s ease-in-out 0.2s;
transition: all 0.2s ease-in-out 0.2s;
}
.view a.info {
display: inline-block;
text-decoration: none;
padding: 7px 14px;
background: #222;
color: #fff;
margin-top:85px;
text-transform: uppercase;
-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
filter: alpha(opacity=0);
opacity: 0;
-webkit-transform: translateY(100px);
-moz-transform: translateY(100px);
-o-transform: translateY(100px);
-ms-transform: translateY(100px);
transform: translateY(100px);
-webkit-transition: all 0.3s ease-in-out 0.1s;
-moz-transition: all 0.3s ease-in-out 0.1s;
-o-transition: all 0.3s ease-in-out 0.1s;
-ms-transition: all 0.3s ease-in-out 0.1s;
transition: all 0.3s ease-in-out 0.1s;
}
.view:hover .overlay {
-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter: alpha(opacity=100);
opacity: 1;
}
.view:hover a.info {
-ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
filter: alpha(opacity=100);
opacity: 1;
-webkit-transform: translateY(0px);
-moz-transform: translateY(0px);
...