css 单选按钮图标替换的方法

金灿灿的朝晖,渐渐染红了东方的天际,高高的黄山主峰被灿烂的云霞染成一片绯红。太阳在朝霞的迎接中,露出了红彤彤的面庞,霎时,万道金光透过树梢给水面染上了一层胭脂红。

一.需求:替换单选按钮默认图标

二.原理:

  1.使用label扩大选择热区,隐藏input元素,

  2.添加一个元素设置其背景图作为默认显示的按钮图标并显示,

  3.为该元素添加一个伪元素相对于添加的元素绝对定位且默认不显示,在该伪元素中添加默认选中的背景图

  4.在input元素选中后,显示该伪元素,因为伪元素是绝对定位层级比较高所以会显示在上面,即选中的图标

三.HTML

<label>
<input name="price" type="radio" value="1" />
<span className="show-radio"></span>
<p>100-500</p>
</label>

四.CSS

input{

  display:none

};

 

.show-radio{
  display: inline-block;
  width:34px;
  height:35px;
  background:url('../../imgs/icons.png') no-repeat;
  background-position:-529px -180px;
  vertical-align: middle;
  position: relative;
}
.show-radio:before{
  content:'';
  display: none;
  width:34px;
  height:35px;
  background:url('../../imgs/icons.png') no-repeat;
  background-position:-474px -180px;
  vertical-align: middle;
  position:absolute;
  left:0;
  top:0;
}
input:checked~show-radio:before{
  display:block;
}

五.效果

近重视实现思路和重要代码,部分省略,望见谅

以上就是css 单选按钮图标替换的方法。一念执,千样苦楚来。更多关于css 单选按钮图标替换的方法请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
如何利用CSS3美化单选、复选按钮的显示样式

如何利用CSS3如何实现单选框动画特效示例代码

div+css让div内部元素如单选按钮均匀分布

css让页脚保持在底部位置的四种方案

Flex布局史上最简单使用语法教程