• 纯css编写开关按钮


    本文将教你怎么在不使用js的前提下,用纯css写一个开关按钮。

    效果一

    展示地址:http://output.jsbin.com/ritoreh/1

    代码如下:

    <!DOCTYPE html>
    <html>
    <head>
        <title>纯css编写开关按钮(一)</title>
        <style type="text/css">
            .chooseBtn {
                display: none;
            }
    
            .choose-label {
                box-shadow: #ccc 0px 0px 0px 1px;
                width: 40px;
                height: 20px;
                display: inline-block;
                border-radius: 20px;
                position: relative;
                background-color: #bdbdbd;
                overflow: hidden;
            }
    
            .choose-label:before {
                content: '';
                position: absolute;
                left: 0;
                width: 20px;
                height: 20px;
                display: inline-block;
                border-radius: 20px;
                background-color: #fff;
                z-index: 20;
                -webkit-transition: all 0.5s;
                transition: all 0.5s;
            }
    
            .chooseBtn:checked + label.choose-label:before {
                left: 20px;
            }
    
            .chooseBtn:checked + label.choose-label {
                background-color: #51ccee;
            }
        </style>
    </head>
    <body>
    <input type="checkbox" name="sex" id="male" class="chooseBtn" />
    <label for="male" class="choose-label"></label>
    </body>
    </html>

    效果二 : 

    展示地址:http://output.jsbin.com/vipeci/1

    代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>纯css编写开关按钮(二)</title>
        <style type="text/css">
            #toggle-button{ display: none; }
            .button-label{
                position: relative;
                display: inline-block;
                width: 80px;
                height: 30px;
                background-color: #ccc;
                box-shadow: #ccc 0px 0px 0px 2px;
                border-radius: 30px;
                overflow: hidden;
            }
            .circle{
                position: absolute;
                top: 0;
                left: 0;
                width: 30px;
                height: 30px;
                border-radius: 50%;
                background-color: #fff;
            }
            .button-label .text {
                line-height: 30px;
                font-size: 18px;
                text-shadow: 0 0 2px #ddd;
            }
    
            .on { color: #fff; display: none; text-indent: 10px;}
            .off { color: #fff; display: inline-block; text-indent: 34px;}
            .button-label .circle{
                left: 0;
                transition: all 0.3s;
            }
            #toggle-button:checked + label.button-label .circle{
                left: 50px;
            }
            #toggle-button:checked + label.button-label .on{ display: inline-block; }
            #toggle-button:checked + label.button-label .off{ display: none; }
            #toggle-button:checked + label.button-label{
                background-color: #51ccee;
            }
    
        </style>
    </head>
    <body>
    
    <div class="toggle-button-wrapper">
        <input type="checkbox" id="toggle-button" name="switch">
        <label for="toggle-button" class="button-label">
            <span class="circle"></span>
            <span class="text on">ON</span>
            <span class="text off">OFF</span>
        </label>
    </div>
    
    </body>
    </html>
    本文为 小丁码园 作者HannaDing原创文章,如需转载请注明原文网址摘自http://www.cnblogs.com/dinghuihua/
  • 相关阅读:
    进入正在运行的Docker的asp.net core容器
    EF 更新记录发现外键更改但更新又跳回以前值
    远程获取http数据和提交数据
    C# 32位16进制加密
    netcore命令行运行程序
    MD5加密32位16进制
    C# MD5加密32位16进制有时少一位问题
    netcoreMVC中使用Vue模板分页封装(不适合数据量大)
    Vue组件间传值 和 访问
    jenkins部署安装
  • 原文地址:https://www.cnblogs.com/dinghuihua/p/6674106.html
Copyright © 2020-2023  润新知