css实现自定义按钮的样式实际上很早就有了,只是会用的人不是很多,里面涉及到了最基础的css写法,在火狐中按钮还是会显示出来,这时需要将i标签的背景设置为白色,同时z-index设置比input高一些,这样才可以把按钮盖住,同时注意:background-color放在background后才起作用

/*自定义按钮 */
.invoice-class-type{
position:relative;
display:inline-block;
width:120px;
height:30px;
line-height:30px;
text-align: center;
}
.invoice-class-type>input[type="radio"]{
position:absolute;
display:block;
height:1px;
widht:1px;
left:0;
top:0;
}
.invoice-class-type>input[type="radio"]+i{
display:block;
position:absolute;
left:0;
top:0;
z-index:10;
line-height:30px;
width:120px;
height:30px;
border:1px solid #888;
border-radius:2px;
cursor:pointer;
background-color:#fff;
}
.invoice-class-type>input[type="radio"]:checked+i{
border-color:#f30026;
background:url(../images/modify-img/red_right.png) no-repeat right bottom;
background-color:#fff;
}
/*结束 自定义按钮*/

  

  

效果图:

又例如:单选按钮时只需要注意name属性就行

/*checkbox*/
.s-checkbox{
position:relative;
display: inline-block;
}
.shopping_table_check1{
position:relative;
}
.shopping_table_check1>span:before{
margin-top:20px;
}
input[type="radio"].custom-checkbox,
input[type="checkbox"].custom-checkbox{
position: absolute;
z-index: -100;
height: 1px;
width: 1px;
top:0;
left:0;
}
input[type="radio"].custom-checkbox+span:before,
input[type="checkbox"].custom-checkbox+span:before{
display: inline-block;
content: "\a0";
width: 18px;
height: 18px;
line-height: 18px;
font-weight:800;
text-align: center;
box-shadow: 0 1px 2px rgba(0,0,0,.05);
border:1px solid #f30026;
background-color:#fff;
color:#fff;
}
input[type="radio"].custom-checkbox:checked+span:before,
input[type="checkbox"].custom-checkbox:checked+span:before{
box-shadow:none;
background-color:#f30026;
content: "√";
}
/*结束 checkbox*/

效果图如下:

  

 结合css3写炫酷按钮

CSS

.animate-checkbox{
position: relative;
display: inline-block;
width:60px;
height:30px;
border-radius: 15px;
background-color:#fff;
box-shadow: 1px 0 3px #333;
margin-top: 30px;
cursor: pointer;
}
.animate-checkbox input{
position: absolute;
top:0;
left:0;
height:1px;
width:1px;
z-index: 1;
}
.animate-checkbox i{
position: absolute;
left:0;
top:0;
background-color: #428bca;
width:30px;
height: 30px;
border-radius: 15px;
z-index: 2;
transition: width linear .2s;
}
.animate-checkbox i:before{
display: block;
position: absolute;
content:" ";
left:0;
top:0;
width:30px;
height: 30px;
border-radius: 100%;
background-color:#f30026;
transition: left linear .2s;
}
.animate-checkbox input[type="checkbox"]:checked+i{
width:60px;
transition: width linear .2s;
}
.animate-checkbox input[type="checkbox"]:checked+i:before{
left:30px;
transition: left linear .2s;
}

DOM  结果

<label class="animate-checkbox">
<input type="checkbox" name="">
<i></i>
</label>

效果图

没选中

选中  

  

 

css笔记——css 实现自定义按钮的更多相关文章

  1. HTML+CSS笔记 CSS笔记集合

    HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...

  2. HTML+CSS笔记 CSS中级 一些小技巧

    水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...

  3. HTML+CSS笔记 CSS中级 颜色&长度值

    颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...

  4. HTML+CSS笔记 CSS中级 缩写入门

    盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...

  5. HTML+CSS笔记 CSS进阶再续

    CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...

  6. HTML+CSS笔记 CSS进阶续集

    元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...

  7. HTML+CSS笔记 CSS进阶

    文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...

  8. HTML+CSS笔记 CSS入门续集

    继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...

  9. HTML+CSS笔记 CSS入门

    简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...

随机推荐

  1. 【转】python中的lambda函数

    http://www.cnblogs.com/coderzh/archive/2010/04/30/python-cookbook-lambda.html lambda函数也叫匿名函数,即,函数没有具 ...

  2. string <-> wstring

    // std::string -> std::wstringstd::string s("string");std::wstring ws;ws.assign(s.begin ...

  3. Android开发学习之 定制界面风格

    统一的用户界面是可以使得应用程序更友好.要做到用户界面的统一,我们就必须用到风格(style)和主题(theme).OPhone系统提供了很多系统默认的风格和主题,但是很多情况下,这些不能满足我们的需 ...

  4. 互联网常见Open API文档资源

    原文地址:http://blog.sina.com.cn/s/blog_4d8713560100y272.html 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网 ...

  5. cocos2d-x3.2在xcode6.1下的 环境搭建

    由于最近需要给CP开发游戏SDK,顺便又重新接触了下cocos2d-x,自己曾在2011年的时候用过cocos2d-x早起的版本,现发现3.2版于原来的差距还是蛮大的,环境搭建流程如下: 1.xcod ...

  6. 非托管C++通过C++/CLI包装调用C# DLL

    项目中要给其它客户程序提供DLL做为接口,该项目是在.Net4.0平台下开发.终所周知.Net的各个版本之间存在着兼容性的问题,但是为了使用高版本运行平台的新特性,又不得不兼顾其它低版本平台客户程序的 ...

  7. YAR 并行RPC框架研究

    前几天,部门召开了PHP技术峰会 学习会议,大家分别对这次会议的PPT 做了简单的介绍, 其中提到了 鸟哥[惠新辰]的一篇PPT<微博LAMP 演变>,如果谁有需要可以去谷歌搜,或者去 h ...

  8. SQlServer2008 之 定时执行sql语句作业的制定

    1.打开[SQL Server Management Studio],在[对象资源管理器]列表中选择[SQL Server 代理]: 2.鼠标右击[SQL Server 代理],选择[启动(S)],如 ...

  9. Turn the pokers

    Problem Description During summer vacation,Alice stay at home for a long time, with nothing to do. S ...

  10. 观察者模式(二)--《Head First DesignPattern》

    我们用Java中自带的观察者模式接口来重写前面的例子. 先看一下类图: 这里用到了一个setChanged函数,它用来标记状态已经改变的事实,好让notifyObservers()知道当它调用时就应该 ...