仿 Tailwind CSS 官网首页 一个 button 的变化动画
先来看一下 tailwind CSS 官网这个动画的效果. 模仿这个动画可以学到的是定义和使用 CSS 变量以及在 JavaScript 中操作修改 CSS 变量. 在之前的交互动画模仿中, 借用了 <input type="radio">, 而这次则改用 <input type="checkbox">

下面是我模仿的结果

HTML
<div class="container flex">
<input type="checkbox" title="this input" name="input" id="input-switch">
<label for="input-switch">
<div class="switch">
<div class="button"></div>
</div>
</label>
</div>
因为开关是可以开也可以关, 所以不能用 radio 因为其开了再点就不会关. 所以改用 checkbox
CSS
- 定义两个变量, 分别表示开关的开关和默认的背景颜色, 重置样式, 定义一个
flex的水平垂直居中布局:root { --radius: 20px; --bgColor: #fff; } * { padding: 0; margin: 0; } .flex { display: flex; justify-content: center; align-items: center; } - 设置
container容器的样式. 这里要使用之前定义的变量bgColor, 给背景颜色的变化加上线性过渡.container { height: 100vh; background-color: var(--bgColor); transition: background-color .2s linear

最低0.47元/天 解锁文章
3105

被折叠的 条评论
为什么被折叠?



