.box{ text-align: center; overflow: hidden; position: relative; } .box:before, .box:after{ content: ""; width: 100%; height: 100%; background: rgba(0,0,0,0.7); opacity: 0; position: absolute; top: 0; left: -100%; z-index: 1; transition: all 0.6s ease 0s; } .box:after{ left: auto; right: -100%; } .box:hover:before{ left: 50%; opacity: 1; } .box:hover:after{ right: 50%; opacity: 1; } .box img{ width: 100%; height: auto; transform: scale(1.1); transition: all 0.3s ease 0s; } .box:hover img{ transform: scale(1); } .box .box-content{ width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: 2; transition: all 0.4s ease 0s; } .box .content{ width: 100%; position: absolute; top: 50%; left: 50%; opacity: 0; transform:translateX(-50%) translateY(-100%); transition: all 0.5s ease 0s; } .box:hover .content{ transform: translateX(-50%) translateY(-50%); opacity: 1; } .box .title{ font-size: 28px; font-weight: 700; color: #fff; letter-spacing: 1px; margin: 0 0 5px 0; transition: all 0.3s ease 0s; } .box .post{ display: inline-block; font-size: 14px; font-style: italic; color: #b7d43e; border-radius: 0 10px 0 10px; margin: 0 0 10px 0; } .box .icon{ padding: 0; margin: 0 0 10px 0; list-style: none; position: absolute; bottom: 10px; left: 50%; opacity: 0; transform: translateX(-50%) rotateX(90deg); transform-origin: bottom; transition: all 0.3s ease 0s; } .box:hover .icon{ opacity: 1; transform: translateX(-50%) rotateY(0); } .box .icon li{ display: inline-block; margin-right: 10px; } .box .icon li:last-child{ margin-right: 0; } .box .icon li a{ display: block; width: 35px; height: 35px; line-height: 35px; background: #b7d43e; font-size: 18px; color: #fff; position: relative; transition: all 0.3s ease 0s; } .box .icon li a:hover{ color: #fff; border-radius: 20px; text-decoration: none; } @media only screen and (max-width:990px){ .box{ margin-bottom: 30px; } }