HTML5+CSS3小实例:酷炫的文字裂开特效

506 阅读1分钟

HTML5+CSS3实现酷炫的文字裂开特效,鼠标悬停,文字上下裂开,中间显示更多说明,悬停时,其他文字模糊,不说了,看看效果有多酷炫吧!

效果:

源码:

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">

    <title>文字裂开效果</title>
    <link rel="stylesheet" href="../css/20.css">
</head>

<body>
    <section>
        <div class="item">
            <div class="a">Zan.</div>
            <div class="a">Zan.</div>
            <a href="#">点赞了解更多</a>
        </div>
        <div class="item">
            <div class="a">Foll.</div>
            <div class="a">Foll.</div>
            <a href="#">关注了解更多</a>
        </div>
        <div class="item">
            <div class="a">Coll.</div>
            <div class="a">Coll.</div>
            <a href="#">收藏了解更多</a>
        </div>
    </section>
</body>

</html>
*{
    /* 取消页面内外边距 */
    margin: 0;
    padding: 0;
}
body{
    /* 100%窗口高度 */
    height: 100vh;
    background: #000;
    /* 弹性布局 水平、垂直居中 */
    display: flex;
    justify-content: center;
    align-items: center;
}
section{
    width: 100%;
    height: 100px;
    /* border: 1px solid red; */
    display: flex;
    justify-content: space-around;
    align-items: center;
}
section .item{
    /* border: 1px solid blue; */
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
section .item .a{
    color: #fff;
    font-style: italic;
    font-weight: bold;
    font-size: 10vw;
    top: 0;
    opacity: 1;
    transition: top 0.5s,opacity 0.5s;
}
/* 切割文字 */
section .item .a:nth-child(1){
    position: absolute;
    clip-path: polygon(0% 0%,100% 0%,100% 51%,0% 51%);
}
section .item .a:nth-child(2){
    position: relative;
    clip-path: polygon(0% 50%,100% 50%,100% 100%,0% 100%);
}
/* 触发景深效果 */
section:hover .item{
    filter: blur(10px);
    transform: scale(0.8);
    transition: filter 0.5s,transform 0.5s;
}
/* 对应的取消景深效果 */
section .item:hover{
    filter: blur(0px);
    transform: scale(1);
    transition: filter 0.5s,transform 0.5s;
}
/* 上半部分上移并变淡 */
section .item:hover .a:nth-child(1){
    top: -40px;
    opacity: 0.5;
    transition: top 0.5s,opacity 0.5s;
}
/* 上半部分下移并变淡 */
section .item:hover .a:nth-child(2){
    top: 40px;
    opacity: 0.5;
    transition: top 0.5s,opacity 0.5s;
}
/* 裂开显示的文字 */
section .item a{
    position: absolute;
    color: #fff;
    text-decoration: none;
    opacity: 0;
    transition: opacity 0.5s;
}
section .item a:hover{
    text-decoration: underline;
}
section .item:hover a{
    opacity: 1;
    transition: opacity 0.5s;
}