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. cdoj 1256 昊昊爱运动 预处理/前缀和

    昊昊爱运动 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1256 Descr ...

  2. Codeforces Gym 100342D Problem D. Dinner Problem Dp+高精度

    Problem D. Dinner ProblemTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/1003 ...

  3. 实时数据采集传输软件LDM配置

    本环境一共两个机器:cma.ldm87.gov.cn(hostname)机器作为upstream LDM,cma.ldm84.gov.cn(hostname)机器作为downstream LDM.下面 ...

  4. Linux用户及用户组设置

    查看当前用户所属的组 groups  查看<user1>, <user2> 和 <user3>所属的组 groups <user1> <user2 ...

  5. iOS开发——UI_swift篇&TableView自定义聊天界面

    TableView自定义聊天界面   1,下面是一个放微信聊天界面的消息展示列表,实现的功能有: (1)消息可以是文本消息也可以是图片消息 (2)消息背景为气泡状图片,同时消息气泡可根据内容自适应大小 ...

  6. 解决PowerDesigner 反向工程没有注释(备注)

    本文转载自:http://www.cnblogs.com/zhangxb/archive/2012/04/20/2458898.html 1. 列注释 原来代码: {OWNER, TABLE, S, ...

  7. centos安装zendstudio centos系统

    查看centos系统32或64位命令(位数):在终端中执行“getconf LONG_BIT”命令并回车键确定 安装zend studio : 1. 首先安装好Java环境yum -y install ...

  8. 未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0” 提供程序解决办法

    ---恢复内容开始--- 最近在用c#写一个处理excel的软件,连接excel的时候出现一个问题未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0” 提供程序,究其原因是我的电脑是 ...

  9. java 开源缓存框架--转载

    原文地址:http://www.open-open.com/13.htm  JBossCache/TreeCache  JBossCache是一个复制的事务处理缓存,它允许你缓存企业级应用数据来更好的 ...

  10. 临时2级页表的初始化过程 head_32.S 相关代码解释

    page_pde_offset = (__PAGE_OFFSET >> 20); /* __PAGE_OFFSET是0xc0000000,page_pde_offset = 3072 = ...