2种超酷鼠CSS3标滑过图片遮罩层动画特效

当前位置:主页 > CSS3库 > CSS3动画 > 2种超酷鼠CSS3标滑过图片遮罩层动画特效
2种超酷鼠CSS3标滑过图片遮罩层动画特效
分享:

    插件介绍

    这是一款使用CSS3制作的炫酷鼠标滑过图片遮罩层动画特效。该特效中有2种不同的效果,均是咋is本滑过图片时,使用遮罩层的旋转和缩放来展示图片的描述信息。

    浏览器兼容性

    浏览器兼容性
    时间:10-02
    阅读:
简要教程

这是一款使用CSS3制作的炫酷鼠标滑过图片遮罩层动画特效。该特效中有2种不同的效果,均是咋is本滑过图片时,使用遮罩层的旋转和缩放来展示图片的描述信息。

使用方法

HTML结构

该特效使用bootstrap来进行布局,核心代码为使用一个div.box作为容器,里面放置图片和一个遮罩层div.box-content

<div class="box">
    <img src="img/1.jpg">
    <div class="box-content">
        <h3 class="title">图片名称</h3>
        <p class="description">
            描述信息...
        </p>
        <a class="read" href="#">Read More</a>
    </div>
</div>
                
CSS样式

在第一个DEMO中,鼠标滑过图片的效果为图片线居中缩小,然后遮罩层在反向放大。其实现代码非常简单,主要使用transform属性来制作缩放和旋转,并通过transition来制作平滑过渡的动画效果。

.box{
    background: #fff;
    box-shadow: 0 0 5px #bababa;
    text-align: center;
    overflow: hidden;
    position: relative;
}
.box img{
    width: 100%;
    height: auto;
    transition: all 0.4s ease-in-out 0.2s;
}
.box:hover img{
    transform: scale(0);
    transition-delay: 0s;
}
.box .box-content{
    width: 100%;
    height: 100%;
    background: #425770;
    color: #fff;
    padding: 30px;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transform: scale(0) rotate(-180deg);
    transition: all 0.4s ease-in 0s;
}
.box:hover .box-content{
    opacity: 1;
    transform: scale(1) rotate(0deg);
    transition-delay: 0.2s;
}
.box .title{
    font-size: 20px;
    font-weight: 800;
    border-bottom: 1px solid #334a65;
    padding-bottom: 10px;
    margin-top: 0;
    text-transform: capitalize;
}
.box .description{
    font-size: 13px;
    font-style: italic;
    line-height: 20px;
    margin-bottom: 30px;
}
.box .read{
    display: inline-block;
    font-size: 14px;
    color: #fff;
    background: #132d4d;
    padding: 7px 20px;
    text-transform: capitalize;
}
@media only screen and (max-width: 990px){
    .box{ margin-bottom: 20px; }
}
@media only screen and (max-width: 479px){
    .box .box-content{ padding: 20px; }
}
@media only screen and (max-width: 359px){
    .box .box-content{ padding: 10px; }
}                  
                

第二个DEMO的实现代码请参考下载文件。