23

用css实现带动画效果的单选框 -凯发真人娱乐

2023-08-17,,

预览一下效果:http://39.105.101.122/myhtml/css/singlebox2/singleradio.html

布局结构为:

 1 

2
3
4
5
6
7
8
9
10

type=“radio”定义单选按钮,label标签为 input 元素定义标注,把label标签的for属性设置为何input标签的id相同即可关联,当鼠标点击label的时候也会触发input。可以设置label的样式,隐藏input,当radio选中的时候,对应的label标签发生样式改变就可以。

label标签默认是不显示的,所以需要设置display属性为inline-block(行内块级元素,没有换行符)。

添加label的after,设置position为absolute,label的position为relative,after的大小位置设置好,添加transform: scale(0)缩小到看不到,然后当关联input选中(checked值是checked)的时候,再设置scale(1),然后添加transition过渡属性。

在这里不需要用到js,当input选中的时候设置label属性可以这样写:

input:checked label:after{
...
}

加号是相邻兄弟选择器(如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器)。这样当radio选中的时候,相对应的label标签的样式也会改变。

以上是一些需要注意的地方,其他的就是一些定位,颜色,宽度高度,边框属性了,这个可以自定义。

附上代码:

html:

 1 
2
3
4
5
6
7
8
9

10
11
12
13
14
15
16
17
18

19

20
21
22
23
24
25
26
27
28

29
30

css:

 1 /**{*/
2 /*margin: 0;*/
3 /*padding: 0;*/
4 /*}*/
5 .radio-1{
6 width: 980px;
7 margin: 0 auto;
8 padding: 3% 0;
9 background-color: #3cc;
10 text-align: center;
11 }
12 .radio-1 input{
13 display: none;
14 }
15 .radio-1 label{
16 display: inline-block;
17 width: 28px;
18 height: 28px;
19 position: relative;
20 background-color: #ffffff;
21 border: 1px solid #cccccc;
22 margin-left: 10px;
23 border-radius: 100%;
24 cursor: pointer;
25 }
26 .radio-1 label:after{
27 width: 20px;
28 height: 20px;
29 top: 4px;
30 left: 4px;
31 position: absolute;
32 background-color: #666666;
33 border-radius: 100%;
34 content: "";
35 transform: scale(0);
36 transition: all .2s ease-in;
37 }
38 .radio-1 input:checked label:after{
39 transform: scale(1);
40 transition: all .2s ease-in;
41 }
42 .radio-1 input:checked label{
43 background-color: #eee;
44 transition: all .2s ease-out;
45 }
46 .radio-2{
47 width: 980px;
48 margin: 0 auto;
49 padding: 3% 0;
50 text-align: center;
51 background-color: #fc9;
52 }
53 .radio-2 input{
54 display: none;
55 }
56 .radio-2 label{
57 width: 28px;
58 height: 28px;
59 border: 1px solid #ccc;
60 border-radius: 50%;
61 overflow: hidden;
62 margin-left: 10px;
63 background-color: #fff;
64 display: inline-block;
65 position: relative;
66 cursor: pointer;
67 }
68 .radio-2 label:after{
69 content: "";
70 width: 20px;
71 height: 20px;
72 position: absolute;
73 top: 4px;
74 left: 4px;
75 border-radius: 40%;
76 background-color: #666666;
77 transform-origin: -2px 50%;
78 transform: rotate(-180deg);
79 transition: all .2s ease-out;
80 }
81 .radio-2 input:checked label:after{
82 transform: rotate(0deg);
83 transition: all .2s ease-out;
84 }
85 .radio-2 input:checked label{
86 background-color: #eee;
87 transition: all .2s ease-out;
88 }

用css实现带效果的的相关教程结束。

  • 创建一个windows服务程序与实现定时器效果
    创建一个windows服务程序与实现定时器效果

    1、创建一个windows服务程序 一、   新建window服务项目 二、   添加安装程序 三、   配置服务属性 四、   编写定时器代码 publicpartialclas...

  • 原神4.1渊月祝福效果一览
    原神4.1渊月祝福效果一览

      原神4.1渊月祝福效果是什么呢?很多玩家还不太清楚,下面给大家分享一下原神4.1渊月祝福效果介绍,感兴趣的玩家可以一起来看一看。 原神4.1渊月祝福效果一览 劲切之月 角色的...

  • 《曙光英雄》爱丽丝八音梦旋效果介绍
    《曙光英雄》爱丽丝八音梦旋效果介绍

    曙光英雄爱丽丝八音梦旋效果怎么样?在曙光英雄游戏中,经常会推出各种精美的英雄皮肤,玩家能够在商城中购买自己喜欢的皮肤进行更换,最近在游戏中还会上线全新的爱丽丝·八音梦旋皮肤,有很多玩家对这个新皮肤...

  • 《斗罗大陆:魂师对决》拓跋云进化魂骨效果介绍一览
    《斗罗大陆:魂师对决》拓跋云进化魂骨效果介绍一览

    斗罗大陆:魂师对决是一款十分火爆的手游,其中斗罗大陆魂师对决中使用进化源骨可以让不少专属魂骨获得新的效果,不少小伙伴想知道拓跋云进化魂骨是什么效果,下面小编为大家带来了跋云进化魂骨效果一览,希望...

  • 《元气骑士》精准暴击天赋效果介绍
    《元气骑士》精准暴击天赋效果介绍

    天赋是元气骑士中用以强化自身、削弱敌人或获得其他特殊增益的被动技能。天赋的种类繁多,功能也各不相同。今天小编给大家带来了《元气骑士》精准暴击天赋效果介绍,精准暴击天赋可以降低武器的射击偏移,若数...

  • 《元气骑士》暴击穿透天赋效果介绍
    《元气骑士》暴击穿透天赋效果介绍

    天赋是元气骑士中用以强化自身、削弱敌人或获得其他特殊增益的被动技能。天赋的种类繁多,功能也各不相同。今天小编给大家带来了《元气骑士》暴击穿透天赋效果介绍,元气骑士暴击穿透的植物叫斯派克,可以发出...

网站地图