CSS3曲线移动是一种常见的动画效果,可以让网页元素沿着一条曲线轨迹移动,增加页面的视觉效果。下面是一段CSS3代码示例,演示了如何使用曲线函数 cubic-bezier 来实现元素沿着曲线路径移动:
.element { position: absolute; animation: move 2s ease-in-out infinite; } @keyframes move { 0% { left: 0px; top: 0px; } 50% { left: 400px; top: 200px; transform: translateX(-50%) translateY(-50%); } 100% { left: 800px; top: 0px; transform: translateX(-50%) translateY(-50%); } } .element { animation-timing-function: cubic-bezier(.17,.67,.83,.67); }
在这段代码中,.element 表示需要移动的元素,使用 animation 属性定义了一个名为 move 的动画,时长为 2s,循环播放。接着,定义了三个关键帧,0% 表示动画开始的位置,100% 表示动画结束的位置,50% 是一个中间状态用来实现曲线移动的效果。其中,left 和 top 属性控制元素的位置,transform 属性控制元素的旋转、缩放等变换。
最后,使用 animation-timing-function 属性定义了一个曲线函数 cubic-bezier,它定义了一个由四个参数构成的贝塞尔曲线,用来控制元素的移动速度和加速度。以上代码演示了一个简单的曲线移动效果,可以通过调整参数来实现更多样的动画效果。