说明

使用伪类来对复选框进行样式修改。以下以最简单的一个样式修改为实例进行说明。

步骤介绍:

  1. 将一个label与复选框进行绑定,将两者放在同一个div下
  2. 调整 label的外部样式使其作为复选框的外形
  3. 调整 label::after,使其作为复选框的对勾样式
  4. 绑定复选框的checked样式和 label::after ,使复选框被选择之后即可改变 label::after 样式
  5. 隐藏复选框

编码以及说明

css

.checkbox{
/*预先设定大div的样式*/
width: 50px;
margin: 20px 100px;
position: relative;
}
.checkbox label{
/*
cursor属性设定鼠标的样式
其他属性设定复选框外形
*/
cursor: pointer;
position: absolute;
width: 10px;
height: 10px;
top: 0;
left: 0;
background: #eee;
border:1px solid #ddd;
}
.checkbox label:after{
/*
设定复选框对勾的样式,被选择之前的样式
1. 设定长宽
2. 透明背景,设置成对勾
3. 旋转45度,并兼容各浏览器
*/
opacity: 0.2;
content: '';
position: absolute;
width: 9px;
height: 5px;
background: transparent; border: 3px solid #333;
border-top: none;
border-right: none; -webkit-transform: rotate(-45deg); /* Safari 和 Chrome */
-moz-transform: rotate(-45deg); /* Firefox */
-o-transform: rotate(-45deg); /* Opera */
-ms-transform: rotate(-45deg); /*IE9*/
transform: rotate(-45deg);
}
.checkbox label:hover::after{
/* 鼠标移动到label之后的样式改变 */
opacity: 0.5;
}
.checkbox input[type="checkbox"]:checked + label:after{
/* 绑定复选框的checked和 label::after */
opacity: 1;
}
input[type=checkbox] {
/* 隐藏复选框 */
visibility: hidden;
}

html

<div class="checkbox">
<input type="checkbox" value="1" id="checkboxInput" name="" />
<label for="checkboxInput"></label>
</div>

参考链接

How To Style A Checkbox With CSS

修改checkbox样式-1的更多相关文章

  1. 【CSS】自定义checkbox样式

    修改原生checkbox样式. 效果 原理 1.利用CSS3属性 appearance. 该属性(强制)更改(改变)默认(原生)样式. Firefox 支持替代的 -moz-appearance 属性 ...

  2. 定制 input[type="radio"] 和 input[type="checkbox"] 样式

    表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...

  3. android checkbox样式

    1. 首先要导入你准备用作CheckBox选中和补选中状态的两图片到res的drawable中,如checkbox_checked.png,checkbox_normal.png: 2. 在res/d ...

  4. 用css改变默认的checkbox样式

    自己常用的改变checkbox样式的两个方法: 一.利用background用图片代替checkbox效果 缺点:你首先得有一张好看的图片 优点:浏览器兼容性好 <!doctype html&g ...

  5. WPF 自定义CheckBox样式

    自定义CheckBox样式,mark一下,方便以后参考复用 设计介绍: 1.一般CheckBox模板太难看了,肯定要重写其中的模板 2.模板状态为未选中状态和选中状态,设置为默认未选中就好了. 默认状 ...

  6. WPF CheckBox样式 ScrollViewer样式 WrapPanel、StackPanel、Grid布局

    本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种 ...

  7. CSS控制checkbox样式

    原文地址:http://www.xiumu.org/technology/style-checkboxes-with-css.shtml#comments Checkbox复选框是一个可能每一个网站都 ...

  8. MFC学习 修改窗口样式

    1. 在PreCreateWindow中可用CREATESTRUCT cs, cs.lpszName修改窗口标题, cs.lpszClass = AfxRegisterWndClass 修改图标与样式 ...

  9. JS笔记一:动态修改css样式

    ---恢复内容开始--- 最近在学习CSS/JS的样式,两个合学习一起学习,加深JS的书写和了解. 一.通过Javasript修改图片大小 通过函数来传递图片id,height,width,使用doc ...

随机推荐

  1. 怎样使用yum安装nginx

    yum install -y nginx 以上.

  2. mac 下 vscode配置SFTP连接

    VScode中使用SFTP插件连接远程服务器进行文件修改 下载SFTP插件后,使用Ctrl+Shift+P.输入SFTP,选择第一个将会生成简短的默认配置文件 然后把sftp.json文件内内容换成以 ...

  3. Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)

    原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...

  4. fragment概念理解

    fragment概念理解知识,fragment概念理解图片 fragment概念理解内容,fragment概念理介绍,fragment概念理正文 Fragment是Android honeycomb ...

  5. json树迭代

    getArray(data){ for (var i in data) { if(data[i].disabled){ data[i].disabled = false } if(data[i].ch ...

  6. 分布式任务队列 Celery —— Task对象

    转载至 JmilkFan_范桂飓:http://blog.csdn.net/jmilk  目录 目录 前文列表 前言 Task 的实例化 任务的名字 任务的绑定 任务的重试 任务的请求上下文 任务的继 ...

  7. Java攻城狮面试题录:笔试篇(1)

    1.作用域public,private,protected,以及不写时的区别答:区别如下:不写时默认为friendly 2.ArrayList和Vector的区别,HashMap和Hashtable的 ...

  8. (备忘)Linux mount(挂载命令)详解

    挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o option ...

  9. Jmeter官方插件实现Dubbo接口测试

    目前主流的分布式框架有Dubbo和SpringCloud, SpringCloud是基于Http协议的分布式框架,Dubbo是基于RPC的分布式框架,Jmeter没有内置对Dubbo接口的支持,很难直 ...

  10. 小白老凯,初出茅庐!请多关照!简单分享一些 mysql 数据库的安装操作!请给为大神雅正!

    在我们写代码,存储数据时常常会用到各种数据库,如:mysql.access.sql.server.Oracle等等,在这里就说一下mysql数据库的的操作指令! 首先我们了解下如何安装mysql数据库 ...