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;
}