css技能进度条表现效果

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

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        body,
        html {
            margin: 0;
            padding: 0;
            font-family: sans-serif;
        }
        
        * {
            box-sizing: border-box;
        }
        
        ul,
        li {
            margin: 0;
            padding: 0;
        }
        
        main {
            display: flex;
            align-items: center;
            height: 100vh;
            justify-content: center;
            background-color: #1e272e;
        }
        
        ul {
            width: 500px;
        }
        
        li {
            list-style: none;
            color: #d2dae2;
            font-size: 18px;
            margin: 48px 0;
            position: relative;
        }
        
        li::before,
        li::after {
            content: '';
            display: block;
            height: 16px;
            width: 100%;
            background-color: #1f4a59;
            position: absolute;
            bottom: -28px;
            border-radius: 6px;
        }
        
        li::before {
            box-shadow: 0 0 6px rgba(75, 207, 250, 0.2);
        }
        
        li::after {
            background-image: linear-gradient(90deg, #0fbcf9, #34e7e4);
            animation-duration: 1.2s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
        }
        
        .js::after {
            animation-name: js;
        }
        
        .react::after {
            animation-name: react;
        }
        
        .html5::after {
            animation-name: html5;
        }
        
        .css3::after {
            animation-name: css3;
        }
        
        .sketch::after {
            animation-name: sketch;
        }
        
        @keyframes js {
            from {
                width: 0;
            }
            to {
                width: 90%;
            }
        }
        
        @keyframes react {
            from {
                width: 0;
            }
            to {
                width: 80%;
            }
        }
        
        @keyframes html5 {
            from {
                width: 0;
            }
            to {
                width: 70%;
            }
        }
        
        @keyframes css3 {
            from {
                width: 0;
            }
            to {
                width: 60%;
            }
        }
        
        @keyframes sketch {
            from {
                width: 0;
            }
            to {
                width: 50%;
            }
        }
    </style>
</head>

<body>
    <main>
        <ul>
            <li class="js">JS</li>
            <li class="react">React</li>
            <li class="html5">HTML5</li>
            <li class="css3">CSS3</li>
            <li class="sketch">Sketch</li>
        </ul>
    </main>
</body>

</html>

效果图:

相关推荐
夏幻灵1 小时前
HTML5里最常用的十大标签
前端·html·html5
Mr Xu_1 小时前
Vue 3 中 watch 的使用详解:监听响应式数据变化的利器
前端·javascript·vue.js
未来龙皇小蓝1 小时前
RBAC前端架构-01:项目初始化
前端·架构
程序员agions1 小时前
2026年,微前端终于“死“了
前端·状态模式
万岳科技系统开发1 小时前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
程序员猫哥_1 小时前
HTML 生成网页工具推荐:从手写代码到 AI 自动生成网页的进化路径
前端·人工智能·html
龙飞051 小时前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
我爱加班、、2 小时前
Websocket能携带token过去后端吗
前端·后端·websocket
AAA阿giao2 小时前
从零拆解一个 React + TypeScript 的 TodoList:模块化、数据流与工程实践
前端·react.js·ui·typescript·前端框架
杨超越luckly2 小时前
HTML应用指南:利用GET请求获取中国500强企业名单,揭秘企业增长、分化与转型的新常态
前端·数据库·html·可视化·中国500强