JSFiddle - React, Tailwind, and code Playground
by Sambora
HTML
<div class="view third-effect">
<img src="http://i.imgur.com/nbynS1m.jpg" />
<div class="mask"> <a href="#" class="info" title="Full Image">Full Image</a>
</div>
</div>
CSS
.third-effect .mask {
opacity: 0;
overflow:visible;
border:100px solid rgba(0, 0, 0, 0.7);
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box;
box-sizing:border-box;
-webkit-transition: all 0.4s ease-in-out;
-moz-transition: all 0.4s ease-in-out;
-o-transition: all 0.4s ease-in-out;
-ms-transition: all 0.4s ease-in-out;
transition: all 0.4s ease-in-out;
}
.third-effect a.info {
position:relative;
top:-10px;
opacity: 0;
-webkit-transition: opacity 0.5s 0s ease-in-out;
-moz-transition: opacity 0.5s 0s ease-in-out;
-o-transition: opacity 0.5s 0s ease-in-out;
-ms-transition: opacity 0.5s 0s ease-in-out;
transition: opacity 0.5s 0s ease-in-out;
}
.third-effect:hover .mask {
opacity: 1;
border:100px solid rgba(0, 0, 0, 0.7);
box-shadow: -5px 5px 0 #ccc, -10px 10px 0 #999, -15px 15px 0 #ccc;
}
.third-effect:hover a.info {
opacity:1;
-moz-transition-delay: 0.3s;
-webkit-transition-delay: 0.3s;
-o-transition-delay: 0.3s;
-ms-transition-delay: 0.3s;
transition-delay: 0.3s;
box-shadow: -5px 5px 0 #ccc, -10px 10px 0 #999, -15px 15px 0 #ccc;
}
.view {
border: 5px solid #fff;
overflow: hidden;
position: relative;
text-align: center;
box-shadow: 0px 0px 5px #aaa;
cursor: default;
width: 122px;
height: 160px;
box-shadow: -3px 3px 0 #ccc, -6px 6px 0 #999, -9px 9px 0 #ccc;
-webkit-transition: all 0.15s ease;
}
.view .mask, .view .content {
width: 122px;
height: 160px;
position: absolute;
overflow: hidden;
top: 0;
left: 0;
}
.view img {
display: block;
position: relative;
}
.view a.info {
background:url(../img/link.png) center no-repeat;
display: inline-block;
text-decoration: none;
padding:0;
text-indent:-9999px;
width:20px;
height:20px;
}