H5W3
当前位置:H5W3 > CSS3 > 正文

css小demo(3) 点击按钮切换

效果:
css小demo(3) 点击按钮切换

静态html:

<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<link rel="stylesheet" href="https://www.pianshen.com/article/760431168/index.css">
</head>
<body>
<div class="checkbox">
<div class="inner">
<div class="toggle"></div>
</div>
</div>
</body>
<script src="https://www.pianshen.com/article/760431168/jquery-1.10.2.min.js"></script>
<script src='https://www.pianshen.com/article/760431168/index.js'></script>
</html>

css 代码:

html,body{
height: 100%;
display: flex;
justify-content: center;
align-items: center;
background-color: aqua;
}
.checkbox{
width: 300px;
height: 150px;
background: linear-gradient(silver, whitesmoke);
border-radius: 4.5em;
display: flex;
justify-content: center;
align-items: center;
}
.inner{
height: 78%;
width: 85%;
background: linear-gradient(dimgray, silver);
border-radius: 4.5em;
box-shadow: inset 0 0 1.5em rgba(0, 0, 0, 0.5);
position: relative;
}
.toggle{
width: 40%;
height: 86%;
background: linear-gradient(to top, silver, whitesmoke);
border-radius: 50%;
box-shadow: 0 0.4em 0.6em rgba(0, 0, 0, 0.2);
position: absolute;
top: 7%;
left: -2%;
transition: left 1s;
}
.toggle::before{
left: 10%;
content: 'OFF';
position: absolute;
top: 8%;
width: 80%;
height: 80%;
background: linear-gradient(silver, whitesmoke);
border-radius: 50%;
text-align: center;
line-height: calc(6.5em * 0.8);
font-family: sans-serif;
color: gray;
}
.checkbox .inner.active {
background: linear-gradient(green, limegreen);
}
.checkbox .inner.active .toggle {
left: 62%;
}
.checkbox .inner.active .toggle::before {
content: 'ON';
color: limegreen;
}

js代码:
需要引入jquery:

$(document).ready(function() {
$('.toggle').click(function() {
$('.inner').toggleClass('active');
});
});

未经允许不得转载:H5W3 » css小demo(3) 点击按钮切换

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址