CSS自定义绿色复选框按钮样式

所属分类: 网页制作 / CSS 阅读数: 752
收藏 0 赞 0 分享

HTML自带的复选框或者单选框按钮样式都是比较简单的一种. 而有时候这些表单控制, 可能需要配合自己的主题样式. 需要去美化他们. 以前可能需要借助JS的实现. 现在CSS也可以完全实现我们想要的效果.

效果图:

我们直奔主题. 首先想到的是, 复选框需要的是一个背景色, 然后就是一个复选框选中的状态.选中状态我们这里用 "勾号" 来表示. HTML就可以简单的表示了

XML/HTML Code复制内容到剪贴板
  1. <div class="i-check">  
  2.        <input type="checkbox" value="0" />  
  3.        <label></label>  
  4. </div>  

.i-check 作为整体的复选框.加入的CSS代码也简单

CSS Code复制内容到剪贴板
  1. .i-check {   
  2.     width20px;   
  3.     height20px;   
  4.     positionrelative;   
  5.     margin20px auto;   
  6. }  

复选框的大小根据自己的需要而定. 这里设置margin, 是为了显示在浏览器的中间.
然后就是设定复选框的默认状态, 这里利用label来设置, 其高度和宽度都与.i-check设置一样, 然后给其一个背景色,设置好他的位置.

CSS Code复制内容到剪贴板
  1. .i-check label {   
  2.    width20px;   
  3.    height20px;   
  4.    cursorpointer;   
  5.    positionabsolute;   
  6.    top: 0;   
  7.    left: 0;   
  8.    background#1A9909;   
  9.    border-radius: 4px;   
  10.   

默认状态我们已经弄好了. 我们继续分析, 那这时候需要的是一个选中状态, 选中状态刚已经讲过用一个勾号表示, 这里我们利用伪类after来设置,设置其边框,及旋转这个after, 就变成了勾号.但是默认状态勾号是隐藏的, 所以我们用了opacity为0.

CSS Code复制内容到剪贴板
  1. .i-check  label:after {   
  2.     content'';   
  3.     width9px;   
  4.     height5px;   
  5.     positionabsolute;   
  6.     top4px;   
  7.     left4px;   
  8.     border3px solid #fff;   
  9.     border-topnone;   
  10.     border-rightnone;   
  11.     backgroundtransparent;   
  12.     opacity: 0;   
  13.     transform: rotate(-45deg);   
  14. }   
  15.   

好了, 整个状态设置好了. 现在需要在点击复选框的时候让勾号显示出来.下面的代码就可以完成

CSS Code复制内容到剪贴板
  1. .i-check input[type=checkbox]:checked + label:after {   
  2.     opacity: 1;   
  3. }   

写到这里,不要忘记了, 让Input复选框设置其样式, 为了让用户能够点击到, 他的高宽度都要和整体一样大小, 让其在整个盒子的最顶层.这样用户就可以能够随便在这个区域就能点击. OK , 最后一步就是让这个input复选框隐藏起来, 隐藏起来, 不是让他真正的隐藏去掉, 这样的话, 就没有点击效果. 这里隐藏需要的是用opacity来设置为0.

CSS Code复制内容到剪贴板
  1. .i-check input[type=checkbox] {   
  2.     opacity: 0;   
  3.     positionabsolute;   
  4.     z-index: 2;   
  5.     left: 0;   
  6.     top: 0;   
  7.     width: 100%;   
  8.     height: 100%;   
  9.     margin: 0;   
  10. }   

好了, 整个效果就完成了, 同理这个也可以去设定单选框的效果。

更多精彩内容其他人还在看

CSS入门教程:计算CSS盒模型宽和高

 出处:当我们布局一个网页的时候,经常会遇到这样的一种情况,那就是最终网页成型的宽度或是高度会超出我们预先的计算,其实就就是所谓的CSS的盒模型造成的。 #test{margin:10px;padding:10px;width:100px;height:100px;}
收藏 0 赞 0 分享

在IE流览器中正确显示PNG透明图片

  png图片有很好的品质。阴影效果也不会有杂边,很流畅。如果插入网页的话可以给网站内容增色不少!更重要的是在不增加图片容量大小的情况下提高了页面的图片的质量。对于有复杂背景,如:在有颜色过度背景上插入不规则边框的图片带来极大很便利!   但目前IE中对于插入
收藏 0 赞 0 分享

CSS教程:DIV底部放置文字

  css对文字的布局上没有靠容器底部对齐的参数,目前使用的一个不错的方法也比较好.就是用position属性来解决,看下面的代码,用position的相对和绝对定位功能也轻松的实现了,文字靠近div低部对齐,并且靠近的距离还可以精确到像素,自己可以调节,是不是很不错呢?
收藏 0 赞 0 分享

如何用CSS让文字居于div的底部

  这个问题是别人提出的,因为css对文字的布局上没有靠容器底部对齐的参数,(或许有但是我没有发现)不过目前我使用的一个不错的方法也比较好.就是用position属性来解决,看下面的代码,我用position的相对和绝对定位功能也轻松的实现了,文字靠近div低部对齐,并且靠近
收藏 0 赞 0 分享

从A页面连接到B页面后并直接把B页面的隐藏层显示

  这个效果实现的是,在B页面里有两个层,一个显示层,我们暂定名c层,一个是隐藏层,我们暂定名d层,单独进B页面的时候,c层显示,d层隐藏,然而从A页面连接到B页面的时候,则是让d层显示,c层隐藏,我觉得这个效果对网页设计者以后会有很大帮助,现在把代码发出来,
收藏 0 赞 0 分享

CSS样式表定义标签li前面样式

定义LI前面的小点样式 view plaincopy to clipboardprint? 语法: list-style-type : disc | circle | square | decimal | lower-roman | upper-roman | lowe
收藏 0 赞 0 分享

符合标准的div css制作的弹出菜单

本文介绍了五款符合标准的div css制作的弹出菜单,而且不含有js的. NO.1最基本的:二级dropdown弹出菜单 <!DOCTYPE html PUB
收藏 0 赞 0 分享

CSS实现在文章每段后面加入带连接的隐藏文字

代码主要理解3个参数:createElement、createTextNode、appendChild。这3个js参数分别是创建元素、创建字符、追加节点。代码原理:循环页面段落标签<p>,创建连接元素<a>,创建要显示的连接字符,用SetAttribute
收藏 0 赞 0 分享

CSS:浏览器特定选择器介绍

当你想在一个浏览器里改变样式而不像在其他浏览器中改变时,这些选择器很有用。 IE6以下 *html{} IE 7 以下 *:first-child html {} * html {} 只对IE 7 *:first-child html {} 只对IE 7
收藏 0 赞 0 分享

WEB标准学习,认识两种网页声明的含义

即网页标准推出来以后,我们时常会看到两种不同的网页的声明,一个是Dhtml,一个是Xhtml。如下所示: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "ht
收藏 0 赞 0 分享
查看更多