html5+css3胶囊按钮代码

效果

代码

html 复制代码
<!DOCTYPE html>  
<html lang="en">  
<head>  
<meta charset="UTF-8">  
<title></title>  
<style>  
    /* 胶囊开关的样式 */  
    .switch {  
        position: relative;  
        display: inline-block;  
        width: 60px;  
        height: 34px;  
    }  
    /*隐藏input*/
    .switch input {  
        display: none;  
    }
    /*胶囊外形*/
    .slider {  
        position: absolute;  
        cursor: pointer;  
        top: 0;  
        left: 0;  
        right: 0;  
        bottom: 0;  
        background-color: #ccc;  
        -webkit-transition: .4s;  
        transition: .4s;
        border-radius: 26px;
    }  
    /*胶囊里面的圆圈*/
    .slider::before {  
        position: absolute;  
        content: "";  
        height: 26px;  
        width: 26px;  
        left: 4px;  
        bottom: 4px;  
        background-color: white;  
        -webkit-transition: .4s;  
        transition: .4s;
        border-radius: 50%;
    }

    /*当input被点击时*/
    /*改变颜色*/
    input:checked + .slider {  
        background-color: #2196F3;  
    }  
   
    /*移动位置*/
    input:checked + .slider::before {  
        -webkit-transform: translateX(26px);  
        -ms-transform: translateX(26px);  
        transform: translateX(26px);  
    }  
  
    
</style>  
</head>  
<body>  
  
<label class="switch">  
    <input type="checkbox">  
    <span class="slider round"></span>  
</label>  
  
<script>  
    // JavaScript用于处理开关状态(如果需要)  
    var switchCheckbox = document.querySelector('.switch input[type="checkbox"]');  
    var slider = document.querySelector('.slider');  
  
    switchCheckbox.addEventListener('change', function() {  
        slider.classList.toggle('round');  
    });  
</script>  
  
</body>  
</html>
相关推荐
核以解忧14 分钟前
借助VTable Skill实现10W+数据渲染
前端
WangHappy16 分钟前
不写 Canvas 也能搞定!小程序图片导出的 WebView 通信方案
前端·微信小程序
李剑一20 分钟前
要闹哪样?又出现了一款新的格式化插件,尤雨溪力荐,速度提升了惊人的45倍!
前端·vue.js
闲云一鹤28 分钟前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
阿虎儿1 小时前
React Context 详解:从入门到性能优化
前端·vue.js·react.js
Sailing2 小时前
🚀 别再乱写 16px 了!CSS 单位体系已经进入“计算时代”,真正的响应式布局
前端·css·面试
喝水的长颈鹿2 小时前
【大白话前端 03】Web 标准与最佳实践
前端
爱泡脚的鸡腿2 小时前
Node.js 拓展
前端·后端
左夕3 小时前
分不清apply,bind,call?看这篇文章就够了
前端·javascript
Zha0Zhun4 小时前
一个使用ViewBinding封装的Dialog
前端