修改checkbox样式-1
说明
使用伪类来对复选框进行样式修改。以下以最简单的一个样式修改为实例进行说明。
步骤介绍:
- 将一个label与复选框进行绑定,将两者放在同一个div下
- 调整 label的外部样式使其作为复选框的外形
- 调整 label::after,使其作为复选框的对勾样式
- 绑定复选框的checked样式和 label::after ,使复选框被选择之后即可改变 label::after 样式
- 隐藏复选框
编码以及说明
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的更多相关文章
- 【CSS】自定义checkbox样式
修改原生checkbox样式. 效果 原理 1.利用CSS3属性 appearance. 该属性(强制)更改(改变)默认(原生)样式. Firefox 支持替代的 -moz-appearance 属性 ...
- 定制 input[type="radio"] 和 input[type="checkbox"] 样式
表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...
- android checkbox样式
1. 首先要导入你准备用作CheckBox选中和补选中状态的两图片到res的drawable中,如checkbox_checked.png,checkbox_normal.png: 2. 在res/d ...
- 用css改变默认的checkbox样式
自己常用的改变checkbox样式的两个方法: 一.利用background用图片代替checkbox效果 缺点:你首先得有一张好看的图片 优点:浏览器兼容性好 <!doctype html&g ...
- WPF 自定义CheckBox样式
自定义CheckBox样式,mark一下,方便以后参考复用 设计介绍: 1.一般CheckBox模板太难看了,肯定要重写其中的模板 2.模板状态为未选中状态和选中状态,设置为默认未选中就好了. 默认状 ...
- WPF CheckBox样式 ScrollViewer样式 WrapPanel、StackPanel、Grid布局
本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种 ...
- CSS控制checkbox样式
原文地址:http://www.xiumu.org/technology/style-checkboxes-with-css.shtml#comments Checkbox复选框是一个可能每一个网站都 ...
- MFC学习 修改窗口样式
1. 在PreCreateWindow中可用CREATESTRUCT cs, cs.lpszName修改窗口标题, cs.lpszClass = AfxRegisterWndClass 修改图标与样式 ...
- JS笔记一:动态修改css样式
---恢复内容开始--- 最近在学习CSS/JS的样式,两个合学习一起学习,加深JS的书写和了解. 一.通过Javasript修改图片大小 通过函数来传递图片id,height,width,使用doc ...
随机推荐
- 怎样使用yum安装nginx
yum install -y nginx 以上.
- mac 下 vscode配置SFTP连接
VScode中使用SFTP插件连接远程服务器进行文件修改 下载SFTP插件后,使用Ctrl+Shift+P.输入SFTP,选择第一个将会生成简短的默认配置文件 然后把sftp.json文件内内容换成以 ...
- Inno Setup CreateProcess 失败:代码 740(Inno Setup打包的程序提升为管理员权限)
原文参考 https://www.cnblogs.com/SnailProgramer/p/4243666.html http://blog.csdn.net/x356982611/article/d ...
- fragment概念理解
fragment概念理解知识,fragment概念理解图片 fragment概念理解内容,fragment概念理介绍,fragment概念理正文 Fragment是Android honeycomb ...
- json树迭代
getArray(data){ for (var i in data) { if(data[i].disabled){ data[i].disabled = false } if(data[i].ch ...
- 分布式任务队列 Celery —— Task对象
转载至 JmilkFan_范桂飓:http://blog.csdn.net/jmilk 目录 目录 前文列表 前言 Task 的实例化 任务的名字 任务的绑定 任务的重试 任务的请求上下文 任务的继 ...
- Java攻城狮面试题录:笔试篇(1)
1.作用域public,private,protected,以及不写时的区别答:区别如下:不写时默认为friendly 2.ArrayList和Vector的区别,HashMap和Hashtable的 ...
- (备忘)Linux mount(挂载命令)详解
挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式:mount [-t vfstype] [-o option ...
- Jmeter官方插件实现Dubbo接口测试
目前主流的分布式框架有Dubbo和SpringCloud, SpringCloud是基于Http协议的分布式框架,Dubbo是基于RPC的分布式框架,Jmeter没有内置对Dubbo接口的支持,很难直 ...
- 小白老凯,初出茅庐!请多关照!简单分享一些 mysql 数据库的安装操作!请给为大神雅正!
在我们写代码,存储数据时常常会用到各种数据库,如:mysql.access.sql.server.Oracle等等,在这里就说一下mysql数据库的的操作指令! 首先我们了解下如何安装mysql数据库 ...