|
|
请马上登录,朋友们都在花潮里等着你哦:)
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 马黑黑 于 2022-1-28 11:44 编辑
实现思路:一个div做钟摆的柄,用它的一个伪元素做摆锤。整体旋转-25度,做动画是再旋转25度。
现在,先做摆柄:
.iBox {
margin: 10px auto;
width: 2px;
height: 200px;
background: gold;
position: relative;
transform: rotate(-25deg);
transform-origin: 0 0;
}
2*200得到一个细长的柄,还是金黄色的,土豪柄。相对位置必须哈,为它的伪元素限定了活动区域。旋转-25deg、运动圆心要在这里设定,它的伪元素会跟着它的步伐,继承的吧;运动圆心坐标为{0,0},就是 iBox 的左上角,等下看到形状了就能理解。
接着伪元素做成一个球球当摆锤:
.iBox::after {
content: "";
position: absolute;
width: 60px;
height: 60px;
background: olive;
border-radius: 50%;
left: -29px;
top: 200px;
}
绝对定位必须的,60*60容易做圆球,注意定位,左移-30px可以的,考虑到柄是2px的,-29px可能更好;top呢,移动一个柄的长度,就到了底端。看整体效果:
现在,就缺少动画了:
@keyframes swing {
100% { transform: rotate(25deg); }
}
动画名称是 swing,我们要在 iBox 的最后一行加入 animation 语句来播放这个 swin 动画:
.iBox {
margin: 10px auto;
width: 2px;
height: 200px;
background: gold;
position: relative;
transform: rotate(-25deg);
transform-origin: 0 0;
animation: swing 2s linear infinite alternate;
}
这个2秒一个运动周期,循环往复,永动机一样永不停止。谁说没有永动机?
|
评分
-
| 参与人数 1 | 威望 +50 |
金钱 +100 |
经验 +50 |
收起
理由
|
红影
| + 50 |
+ 100 |
+ 50 |
赞一个! |
查看全部评分
|