JSFiddle - React, Tailwind, and code Playground

by Ngoc Hieu

HTML

<div id="effect1" class="image">
        <img src="http://1.bp.blogspot.com/-w-AYdXYNfbc/UtFlO1LGaMI/AAAAAAAAAD0/FFi9SRT2Cs8/s1600/effect-1.jpg" />
        <div class="detail">
            <h1 class="title">Hiệu ứng 1</h1>
            <p>Chúng ta vẫn biết rằng, làm việc với một đoạn văn bản dễ đọc và rõ nghĩa dễ gây rối trí</p>
            <a href="#">Xem tiếp</a>
        </div>
    </div>

CSS

.image{
        width: 360px;
        float: left;
        margin: 10px;
        position: relative;
        overflow: hidden;
        height: 240px;
    }
    .image img{
        width: 100%;
    }
    h1.title{
        text-transform: uppercase;
        font-size: 25px;
        font-weight: bold;
        line-height: 25px;
        padding: 10px;
        position: relative;
    }   
    .detail{
        position: absolute;
        width: 100%;
        height: 100%;
        top:0;
        left: 0;
        text-align: center;
    }
    p{
        color: #fff;
        padding: 10px;
    }
    a{
        text-decoration: none;
        display: inline-block;
        padding: 10px 15px;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border: 1px solid #111;
    }
    .mask{
        position: absolute;
        width: 100%;
        height: 100%;
        top:0;
        left: 0;
        bottom: 0;
        right: 0;
    }

#effect1 .title{
        background: rgba(0,0,0,0.7);
        color: #fff;
        transform: translateY(-100px);
        transition: 0.5s;
        -webkit-transition: 0.5s;
        -moz-transition: 0.5s;
        opacity: 0
    }
    #effect1 a{
        background: rgba(0,0,0,0.7);
        color: #fff;
        font-weight: bold;
        vertical-align: middle;
        opacity: 0;
        transition: 0.5s all ease-in-out ;
        -webkit-transition: 0.5s all ease-in-out;
        -moz-transition: 0.5s all ease-in-out;
    }
    #effect1 p{
        font-weight: bold;
        position: relative;
        transform: translateY(100px);
        -webkit-transform: translateY(100px);
        -moz-transform: translateY(100px);
        opacity: 0;
        transition: 0.5s all ease-in-out ;
        -webkit-transition: 0.5s all ease-in-out;
        -moz-transition: 0.5s all ease-in-out;
    }
    #effect1:hover .detail{
        background: #D39846;
        opacity: 0.9;
    }
    #effect1:hover .title{
       ...