CSS3 复选框动画特效

这篇文章中所讲解到的内容和上一篇内容类似,所以在这里不再对具体细节进行详细介绍,不了解的地方可以参照 CSS3 单选框动画特效 , 下面我们将直接展示动画效果并给上代码。

Action one

demo1.gif
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CheckBox</title>
    <style>
        .checkbox {
            width: 900px;
            padding: 3% 0%;
            margin: 50px auto;
            background-color: cornsilk;
            text-align: center;
        }

        .checkbox label {
            display: inline-block;
            width: 64px;
            height: 32px;
            margin-right: 10px;
            background-color: #ffffff;
            border: 1px solid #eeeeee;
            border-radius: 17px;
            cursor: pointer;
            position: relative;
            transition: background-color .2s ease-in;
        }

        .checkbox label:after {
            content: "";
            width: 30px;
            height: 30px;
            border-radius: 50%;
            background-color: #eeeeee;
            position: absolute;
            left: 1px;
            top: 1px;
            transform: translateX(0px);
            transition: transform .2s ease-in;
        }

        .checkbox [type="checkbox"]:checked + label {
            background-color: khaki;
            transition: background-color .2s ease-in;
        }

        .checkbox [type="checkbox"]:checked +label:after{
            transform: translateX(30px);
            transition: transform .2s ease-in;
        }

        .checkbox [type="checkbox"]{
            display: none;
        }
    </style>
</head>
<body>
<div class="checkbox">
    <input type="checkbox" id="checkbox-1">
    <label for="checkbox-1"></label>

    <input type="checkbox" id="checkbox-2">
    <label for="checkbox-2"></label>

    <input type="checkbox" id="checkbox-3">
    <label for="checkbox-3"></label>
</div>

</body>
</html>

Action two

demo2.gif
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .checkbox {
            width: 900px;
            padding: 3% 0px;
            margin: 50px auto;
            background-color: cornsilk;
            text-align: center;
        }

        .checkbox label {
            position: relative;
            display: inline-block;
            width: 30px;
            height: 30px;
            margin-right: 10px;
            overflow: hidden;
            border: 1px solid #eeeeee;
            background-color: #ffffff;
            cursor: pointer;
        }

        .checkbox label:after {
            content: "√";
            position: absolute;
            width: 28px;
            height: 28px;
            line-height: 26px;
            background-color: khaki;
            color: #ffffff;
            left: 1px;
            top: 1px;
            text-align: center;
            transform: translateY(-30px);
            transition: transform .2s ease-out;
            border-radius: 4px;
        }

        .checkbox [type="checkbox"]:checked + label:after {
            transform: translateY(0px);
            transition: transform .2s ease-in;
        }
        .checkbox [type="checkbox"]{
            display: none;
        }
    </style>
</head>
<body>
<div class="checkbox">
    <input type="checkbox" id="checkbox-1" checked="checked">
    <label for="checkbox-1"></label>

    <input type="checkbox" id="checkbox-2">
    <label for="checkbox-2"></label>

    <input type="checkbox" id="checkbox-3">
    <label for="checkbox-3"></label>
</div>

</body>
</html>

以上代码理解起来并不难,如果你认真阅读了我前几篇文章的话,如果你还没看到,建议你前去查看。如果你没时间查看,可以将不理解的地方留言在下方,我会及时给予回复。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,598评论 25 708
  • WebSocket-Swift Starscream的使用 WebSocket 是 HTML5 一种新的协议。它实...
    香橙柚子阅读 24,130评论 8 183
  • 清晨,一丝丝凉风拂面而来,咦,今日不那么闷热了,恍然记起处暑过去八天了,处暑即为“出暑”,是炎热离开的意思。是农历...
    寒岩晰阅读 263评论 0 0
  • 他,外表普通得不能再普通,以我的审美观来看,甚至还有点丑。我以前看过一部研究男女之间荷尔蒙的电影,一直认为...
    敏潇阅读 356评论 0 0
  • 引用围城里的一句话:“幸福的家庭都一样,不幸的家庭各有各的不幸”。我对自己说无论发生什么事,可以哭可以闹,唯...
    小本妞妞阅读 1,487评论 4 5