css小技巧:单选框和复选框的样式

2019-01-0910:06:21网页制作Comments3,190 views字数 992阅读模式

单选框和复选框的样式

让我们一起不使用图片来设置复选框的样式:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html

<!-- html -->
<input type="checkbox" id="check" name="check" />
<label for="check">Checkbox</label>
复制代码
<!-- css -->
input[type=checkbox] {display: none;}

input[type=checkbox] + label:before {  
    content: "";
    border: 1px solid #000;
    font-size: 11px;    
    line-height: 10px;
    margin: 0 5px 0 0;
    height: 10px;
    width: 10px;
    text-align: center;
    vertical-align: middle;
}

input[type=checkbox]:checked + label:before {  
    content: "\2713";
}
复制代码
css小技巧:单选框和复选框的样式

正如你所看见的,我们隐藏了原有的复选框,改为使用伪元素和伪类:checked(IE9+)来表现它。当它被选中时,一个设置在content里的Unicode编码的字符将会显示出来。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html

值得注意的是,Unicode编码在CSS和HTML中的写法是不一样的。在CSS中它是一个以反斜杠为开始的十六进制数,而在HTML中它是十进制的,比如&#10003;。 接着为我们的复选框添加一些动画效果:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html

<!-- checkbox -->
input[type=checkbox] + label:before {  
    content: "\2713";
    color: transparent;
    transition: color ease .3s;
}
input[type=checkbox]:checked + label:before {  
    color: #000;
}

<!-- radio -->
input[type=radio] + label:before {  
    content: "\26AB";
    border: 1px solid #000;
    border-radius: 50%;
    font-size: 0;    
    transition: font-size ease .3s;
}
input[type=radio]:checked + label:before {  
    font-size: 10px;    
}
复制代码
css小技巧:单选框和复选框的样式

这里是所有的Unicode编码,以及可以在这里进行体验。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html

作者:Jrain文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/zhizuo/9302.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/zhizuo/9302.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定