一、前言

默认的checkbox长这样:

  1. <p>
  2. <span><input type="checkbox" /></span>
  3. <span>空闲</span>
  4. <span><input type="checkbox" /></span>
  5. <span>服务中</span>
  6. </p>

有点丑,我想把它变成这样:

二、实现

1、checkbox 难看的框框隐藏掉,改用<label>元素连接到checkbox

  1. <p>
  2. <input type="checkbox" class="e-selfecheckbox" id="place1">
  3. <label class="selfecheckbox_label" for="place1">空闲</label>
  4.  
  5. <input type="checkbox" class="e-selfecheckbox" id="place2">
  6. <label class="selfecheckbox_label" for="place2">服务中</label>
  7. </p>
  8. <style>
  9. .e-selfecheckbox{
  10. display: none;
  11. }
  12. </style>

2、隐藏的框框的用自定义图片来代替

  1. <style type="text/css">
  2. .e-selfecheckbox {
  3. display: none;
  4. }
  5.  
  6. .selfecheckbox_label:before {
  7. content: "";
  8. display: inline-block;
  9. vertical-align: middle;
  10. width: 13px;
  11. height: 13px;
  12. background-image: url(img/scheduling_icon_uncheck2.png);
  13. background-size: 100%;
  14. }
  15. </style>

3、给checkbox注册事件,原理就是点击的时候把他替换成另一张图片

  1. <style type="text/css">
  2. .e-selfecheckbox {
  3. display: none;
  4. }
  5.  
  6. .selfecheckbox_label:before {
  7. content: "";
  8. display: inline-block;
  9. vertical-align: middle;
  10. width: 13px;
  11. height: 13px;
  12. background-image: url(img/scheduling_icon_uncheck2.png);
  13. background-size: 100%;
  14. }
  15.  
  16. /*在e-selfecheckbox元素被选择的时候,将selfecheckbox_label前面的图片替换成另一张*/
  17. .e-selfecheckbox:checked+.selfecheckbox_label:before {
  18. background-image: url(img/scheduling_icon_checked2.png);
  19. }
  20. </style>

4、实现效果

三、结语

本来思路是想用js来实现这个功能的——点击的时候替换成另一个图片。结果问了下我们公司的前端,这么一搞,感觉好高大上啊!

路漫漫其修远兮,吾将上下而求索。

css重写checkbox样式的更多相关文章

  1. CSS控制checkbox样式

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

  2. css的checkbox样式变化

    1.CSS body{font-family:'微软简行楷'} ul li{list-style:none; margin:10px;color:#4985d7;} .myCheck { displa ...

  3. 纯css实现checkbox样式改变

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ...

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

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

  5. 转 纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  6. 【转】纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  7. 纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  8. 使用CSS实现自定义input[checkbox]样式

    思路:使用label上的for熟悉,与checkbox上的id相对应来达到点击选中效果,在使用伪元素,或者其他元素,定位至checkbox上方,替代checkbox,并且隐藏checkbox,使用CS ...

  9. css美化checkbox的样式

    使用iCheck插件可以改变checkbox.radio的原有样式,但是改变的样式尺寸有些大修改起来也比较麻烦,并且需要使用iCheck的调用方法才能使用,有时候iCheck方法还会覆盖掉同级元素的c ...

随机推荐

  1. Java 并发编程:核心理论

    并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能.它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰.思维缜密,这样才能写出高效.安全.可靠的多线程并发程序.本系 ...

  2. [转]Examining Open vSwitch Traffic Patterns

    In this post, I want to provide some additional insight on how the use of Open vSwitch (OVS) affects ...

  3. 你可以这么理解五种I/O模型

    因为项目需要,接触和使用了Netty,Netty是高性能NIO通信框架,在业界拥有很好的口碑,但知其然不知其所以然. 所以本系列文章将从基础开始学起,深入细致的学习NIO.本文主要是介绍五种I/O模型 ...

  4. Win10下python不同版本同时安装并解决pip共存问题

    特别说明,本文是在Windows64位系统下进行的,32位系统请下载相应版本的安装包,安装方法类似. 使用python开发,环境有Python2和 python3 两种,有时候需要两种环境切换使用,下 ...

  5. HTML学习一_网页的基本结构及HTML简介

    HTML网页的基本结构 ```angular2html<!DOCTYPE html> 声明为 HTML5 文档<html> 元素是 HTML 页面的根元素<head> ...

  6. onselectstart属性解决双击出现的蓝色区域

    小伙伴们对 onselect  这个事件应该不陌生吧(在元素中的文本被选中时触发),但当同事问我onselectstart 这个事件的时候,我是一脸蒙蔽,心想,这难道不是随便起的一个方法名吗2333 ...

  7. 一条sql解决.一张表的数据复制到另外一张表

    如何把一个表的数组复制到一张表?也许很多人会把这个表查出来的数据再插入到另外一张表里面,这样很麻烦又要写代码逻辑去处理,其实一条sql语句就可以把一张表的数据复制到另外一张表,或者一张表的某一条数据复 ...

  8. Android UI(三)SlidingMenu实现滑动菜单(详细 官方)

    Jeff Lee blog:   http://www.cnblogs.com/Alandre/  (泥沙砖瓦浆木匠),retain the url when reproduced ! Thanks ...

  9. Kubernetes理论基础

    Kubernetes理论基础 Kubernetes定义 ​ kubernetes是Google开源的容器集群管理系统,2014年6月开源.在Docker技术之上,为容器应用提供资源调度.部署运行.服务 ...

  10. SpringMVC学习(四)———— 数据回显与自定义异常处理器

    一.数据回显技术 Springmvc默认支持对pojo类型的数据回显,默认不支持简单类型的数据回显 1.1.什么是数据回显? 在信息校验时,如果发生校验错误,那么把校验的数据信息,依然停留在当前页面, ...