使用CSS3实现动画勾选


  相信大家在项目中会经常遇到这种需求:勾选框。现在用CSS3来实现一个动画勾选,只需要一个标签即可完成:

  这次需要用到CSS中伪类 after,这个小技巧也是很容易忘记的,所以决定记录起来~

  首先给标签加宽高加背景色:

<style>
.check{
width: 40px;
height: 40px;
background: palevioletred;
position: relative;
margin: 50px auto;
border-radius: 5px;
cursor: pointer;
}
</style>
<div class="check"></div>

  

  接下来利用伪类给标签添加元素,同时水平垂直居中:

  

<style>
.check{
width: 40px;
height: 40px;
background: palevioletred;
position: relative;
margin: 50px auto;
border-radius: 5px;
cursor: pointer;
}
.check:after{
content: '';
display: block;
width: 14px;
height: 10px;
border: 3px solid #fff;
position: absolute;
top: 50%;
left: 50%;
margin-top: -5px;
margin-left: -7px;
}
</style>
<div class="check"></div>

  变成这样:

  

  接下来去掉上边框跟右边框,同时将剩下的旋转45°稍微调整上下左右的距离即可~

  

<style>
.check{
width: 40px;
height: 40px;
background: palevioletred;
position: relative;
margin: 50px auto;
border-radius: 5px;
cursor: pointer;
}
.check:after{
content: '';
display: block;
width: 14px;
height: 10px;
border: 3px solid #fff;
border-width: 0 0 3px 3px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -8px;
margin-left: -8px;
transform: rotate(-45deg);
}
</style>
<div class="check"></div>

  

  最终效果就出来啦~

  我们还可以添加点击事件,一开始不设置颜色跟伪类,点击后添加一个class,给这个class添加伪类以及动画效果:

  

<style>
.check{
width: 40px;
height: 40px;
position: relative;
margin: 50px auto;
border: 1px solid #ddd;
border-radius: 5px;
cursor: pointer;
transition: background-color 0.25s;
}
.checkActive{
background: palevioletred;
border-color: palevioletred;
}
.checkActive:after{
content: '';
display: block;
width: 14px;
height: 10px;
border: 3px solid #fff;
border-width: 0 0 3px 3px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -8px;
margin-left: -8px;
transform: rotate(-45deg);
}
</style>
<div class="check"></div>

  这样就完成啦!

  

CSS中的一下小技巧2之CSS3动画勾选运用的更多相关文章

  1. CSS中的一下小技巧1之CSS3三角形运用

    使用CSS3实现三角形: 在前端页面中有很多时候会遇到需要三角形图案的时候,以前不知道可以用CSS3实现三角形的时候,一般都是叫UI把三角形图案切出来. 后来知道原来可以用CSS3实现三角形,可是用过 ...

  2. ACM 做题过程中的一些小技巧。

    ACM做题过程中的一些小技巧. 1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 2.有时候int型不够用,可以用long l ...

  3. C语言中的调试小技巧

    C语言中的调试小技巧 经常看到有人介绍一些IDE或者像gdb这样的调试器的很高级的调试功能,也听人说过有些牛人做工程的时候就用printf来调试,不用特殊的调试器.特别是在代码经过编译器一些比较复杂的 ...

  4. jquery获取json对象中的key小技巧

    jquery获取json对象中的key小技巧 比如有一个json var json = {"name" : "Tom", "age" : 1 ...

  5. css选择器顺序的小技巧

    在线演示 本地下载 css的选择器的顺序其实很有意思,如果应用的好的话,可以做一些简单的逻辑出来,配合上css3,就可以尽可能的脱离js了. 这里的演示是一个带有hover事件的四张照片,效果来自一个 ...

  6. ES6中常用的小技巧,用了事半功倍哦

    ES6中常用的小技巧,如果能在实际项目中能使用到,必定事半功倍: 1. 强制要求参数 ES6提供了默认参数值机制,允许你为参数设置默认值,防止在函数被调用时没有传入这些参数. 在下面的例子中,我们写了 ...

  7. C#中使用swagger小技巧

    C#中使用swagger小技巧 swaggerUI显示的接口内容主要用于开发阶段便于与前端联调,不适合发布到对外的站点. 有以下两种方式,让接口不显示在SwaggerUI中 1.使用属性 [ApiEx ...

  8. 关于css中选择器的小归纳(一)

    关于css中选择器的小归纳 一.基本选择器 基本选择器是我们平常用到的最多的也是最便捷的选择器,其中有元素选择器(类似于a,div,body,ul),类选择器(我们在HTML标签里面为其添加的clas ...

  9. css的几个小技巧

    本文收录css设置样式的一些小技巧 1. 设置文字在块级标签居中(包括水平居中和垂直居中) 水平居中 方法一:使用text-align text-align:center 方法二:目标标签的父级标签设 ...

随机推荐

  1. 深入学习MySQL事务:ACID特性的实现原理

    事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段.本文将首先介绍MySQL事务相关的基础概念,然后介绍事务的ACID特性,并分析其实现原理. MySQL博大精深,文 ...

  2. Protocol Buffers(2):编码与解码

    目录 Message Structure 解码代码一窥 varint Protobuf中的整数和浮点数 Length-delimited相关类型 小结 参考 博客:blog.shinelee.me | ...

  3. .net接收post请求并把数据转为字典格式

    public SortedDictionary<string, string> GetRequestPost() { int i = 0; SortedDictionary<stri ...

  4. 关于Vue.use()使用详解

    问题 相信很多人在用Vue使用别人的组件时,会用到 Vue.use() .例如:Vue.use(VueRouter).Vue.use(MintUI).但是用 axios时,就不需要用 Vue.use( ...

  5. vue项目,axios请求图片接口,接口返回的是文件流的形式,如何转换成图片?

    axios .get('/captcha', { params: param, responseType: 'arraybuffer' }) .then(response => { return ...

  6. Bootstrap3级联多选下拉框

    <!DOCTYPE html> <html> <head> <title>Bootstrap3级联多选下拉框</title> <met ...

  7. 原创分享!SharePoint母版页修改(实战)

    分享人:广州华软 极简 一. 前言 SharePoint网站创建时,便自带一份母版页,可由开发人员重新自定义一份母版页,关于如何转换成母版页,由于之前已经讲述过,此篇便不再赘述了. 若自定义母版页,你 ...

  8. 解决小米手机USB安装apk时AS报错:INSTALL_FAILED_USER_RESTRICTED

    今天,直接用AS在小米手机上运行安装的时候总是报错:INSTALL_FAILED_USER_RESTRICTED,于是乎,通过以下方式解决: 在开发者选项将USB安装打开,然后,哈,解决了.记录一下.

  9. 从一个git仓库拷贝到另一个git仓库

    利用git从一个仓库拷贝一个项目到另一个仓库,并且log也能够一起过去. 1.从原地址克隆一份裸版本库,比如原本托管于 GitHub. git clone --bare http://github.. ...

  10. Devops step by step

    接着上次分享的devops历程[Followme Devops实践之路], 大家希望能够出一个step by step手册, 那今天我就来和手把手来一起搭建这么一套环境, 演示整个过程! 实验环境需要 ...