CSS 3.0实现文字悬停特效

2020-11-26 11:29:02 浏览数 (1)

给大家分享一个用CSS 3.0实现的网页特效,效果如下:

以下是代码实现,欢迎大家复制粘贴和收藏。

代码语言:javascript复制
<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>CSS 3.0实现文字悬停特效</title>
        <style>
            body {
                margin: 0;
                padding: 0;
                min-height: 100vh;
                font-family: consolas;
                background: rgb(202, 147, 147);
            }

            h2 {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                margin: 0;
                padding: 0;
                font-size: 6em;
                color: transparent;
                text-transform: uppercase;
            }

            h2 span:nth-child(1) {
                position: absolute;
                top: 0;
                left: 0;
                color: #fff;
                transition: 0.5s;
                clip-path: polygon(0 0, 100% 0, 100% 50%, 2% 50%);
                overflow: hidden;
            }

            h2:hover span:nth-child(1) {
                transform: translateY(-18px);
            }

            h2 span:nth-child(2) {
                position: absolute;
                top: 0;
                left: 0;
                color: #fff;
                transition: 0.5s;
                clip-path: polygon(0 50%, 100% 50%, 100% 100%, 0% 100%);
                overflow: hidden;
            }

            h2:hover span:nth-child(2) {
                transform: translateY(18px);
            }

            h2 span:nth-child(3) {
                position: absolute;
                top: 50%;
                left: 0;
                transform: translateY(-50%) scaleY(0);
                width: 91%;
                color: #000;
                background: #ff0;
                font-size: 0.1em;
                letter-spacing: 0.7em;
                text-align: center;
                padding-left: 5px;
                margin-left: 5px;
                transition: 0.5s;
            }

            h2:hover span:nth-child(3) {
                transform: translateY(-50%) scaleY(1);
            }
        </style>
    </head>

    <body>
        <h2> Love <span>Love</span>
            <span>Love</span>
            <span>in yourself</span>
        </h2>
    </body>

</html>

0 人点赞