修改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 ...
随机推荐
- ListUtils的简单集合操作和原理
1 Maven依赖 <dependency> <groupId>org.apache.commons</groupId> <artifactId>com ...
- C#学习基础资料记录---字典(Dictionary),时间表示方法(DateTime.Now),文件操作
1.字典 https://www.cnblogs.com/gengaixue/p/4002244.html 2.时间的表示方法 DateTime.Now的多种用法 https://www.cnblog ...
- c#如何使用MemoryStream和BinaryFormatter进行对象的序列化和返序列化
1 下面是我写的一个序列化的类 public static class ObjSerialize { /// <summary> /// 将对象数组obj序列化,内存中的缓冲区的数据序列化 ...
- Java基础加强-内部类及代理
/*内部类是一个编译时的概念,*/ 常规内部类.静态内部类.局部内部类.匿名内部类 1.常规内部类(常规内部类没有static修饰且定义在外部类类体中) 1.常规内部类中的方法可以直接使用外部类的实例 ...
- 如何从零搭建hexo个人博客网站
https://www.jianshu.com/p/adf65cbad393?utm_source=oschina-app 准备工作 github账号 node.js 环境搭建 git使用 mar ...
- apache thinkphp5 强制https://访问
根目录下,.htaccess文件 <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On ...
- Flutter——Text组件(文字组件)
名称 功能 textAlign 文本对齐方式(center 居中,left 左 对齐,right 右对齐,justfy 两端对齐) textDirection 文本方向(ltr 从左至右,rtl 从右 ...
- Ubuntu安装Python 3.6之编译安装+使用PPA源安装
下面分别详细介绍一下Ubuntu 14.04/16.04安装Python 3.6的两种方法: 方法一 自己编译安装: # 安装编译必需的软件包 sudo apt install build-essen ...
- web开发:javascript高级
一.事件案例 二.循环绑定之变量污染 三.事件的绑定与取消 四.事件对象 一.事件案例 <!DOCTYPE html> <html> <head> <meta ...
- okhttp拦截器之ConnectInterceptor解析
主流程分析: 继续分析okhttp的拦截器,继上次分析了CacheInterceptor缓存拦截器之后,接下来到连接拦截器啦,如下: 打开看一下它的javadoc: 而整个它的实现不长,如下: 也就是 ...