gumpgit
3/29/2018 - 8:30 AM

不可思议的CSS光标下划线跟随效果

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>Page Title</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <style>
        ul {
            display: flex;
            position: absolute;
            width: 800px;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        li {
            position: relative;
            padding: 20px;
            font-size: 24px;
            color: #000;
            line-height: 1;
            transition: 0.2s all linear;
            cursor: pointer;
            list-style-type: none;
        }

        li::before {
            content: "";
            position: absolute;
            top: 0;
            left: 100%;
            width: 0;
            height: 100%;
            border-bottom: 2px solid #000;
            transition: 0.2s all linear;
        }

        li:hover::before {
            width: 100%;
            top: 0;
            left: 0;
            transition-delay: 0.1s;
            border-bottom-color: #000;
        }

        li:hover~li::before {
            left: 0;
        }

        li:active {
            background: #000;
            color: #fff;
        }
    </style>
</head>

<body>

    <ul>
        <li>不可思议的CSS</li>
        <li>导航栏</li>
        <li>光标下划线跟随</li>
        <li>PURE CSS</li>
        <li>Coco</li>
    </ul>

</body>

</html>