css实现一个简洁步进器steper控件选择数值效果代码
代码语言:html
所属分类:选择器
代码描述:css实现一个简洁步进器steper控件选择数值效果代码
代码标签: 简洁 步进 器 steper 控件 选择 数值 效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<style>
@keyframes float {
to {
transform: translateY(0.75em);
}
}
body, div, label {
display: grid;
}
body {
margin: 0;
min-height: 100vh;
background: whitesmoke;
}
form {
place-self: center;
overflow: hidden;
width: 4em;
border-radius: 0.75em;
box-shadow: 0 3rem 6rem rgba(13, 13, 13, 0.2);
background: #333333;
font: 600 6.5em ubuntu, sans-serif;
transition: transform 0.25s;
pointer-events: none;
}
form:active {
transform: scale(0.85);
}
[role=group] {
align-content: center;
height: 2em;
transform: translate(calc((.5 - var(--k))*2em));
transition: inherit;
}
[type=radio] {
z-index: 2;
opacity: 0;
}
[type=radio], [type=radio] + label {
grid-area: 1/calc(var(--i) + 1);
}
[type=radio] + label {
--dif: calc(var(--i) - var(--k));
--sgn: clamp(-1, var(--dif), 1);
--not-sel: min(1, max(-1*var(--dif), var(--dif)));
place-content: center;
width: 2em;
height: 4em;
transform-origin: calc(50%*(1 - var(--sgn)));
transform: scale(calc(1 - var(--not-sel)*.5));
color: hsl(0, 0%, calc(100% - var(--not-sel)*57%));
transition: inherit;
user-select: none;
cursor: pointer;
}
[type=radio]:not(:checked) + label {
pointer-events: auto;
}
</style>
</head>
<body>
<form>
<div role="group" aria-label="value picker" style="--n: 20; --k: 10">
<input type="radio" name="o" id=".........完整代码请登录后点击上方下载按钮下载查看
网友评论0