通过@keyframes和transform: rotate()实现旋转动画,先定义从0deg到360deg的动画关键帧,再将动画绑定到元素并设置时长、速度曲线和循环次数,结合transform-origin调整旋转中心,可创建如加载图标等常见效果。

实现旋转动画效果主要通过CSS的@keyframes和transform: rotate()来完成。下面介绍具体写法和常用技巧。
定义关键帧动画
使用@keyframes创建一个旋转动画,从0度转到360度:
@keyframes rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); }}
也可以用百分比写法,控制更精细:
@keyframes rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); }}
应用动画到元素
将定义好的动画绑定到目标元素,并设置持续时间、循环方式等:
立即学习“前端免费学习笔记(深入)”;
.spinner { width: 50px; height: 50px; background: #007bff; animation: rotate 2s linear infinite;}
参数说明:
纯CSS实现图片美化带边框3D效果鼠标经过旋转堆叠特效动画
纯CSS实现图片美化带边框3D效果鼠标经过旋转堆叠特效动画
70 查看详情
rotate:动画名称,对应@keyframes定义的名字2s:动画持续2秒linear:匀速旋转infinite:无限循环
调整旋转中心点
默认旋转中心是元素中心(50% 50%),可通过transform-origin修改:
.spinner { animation: rotate 1.5s ease-in-out infinite; transform-origin: center left; /* 从左侧中心旋转 */}
常见取值包括:center、top、left、right、bottom或具体像素/百分比。
实用示例:加载中图标
结合边框和旋转,做一个常见的加载动画:
.loader { width: 40px; height: 40px; border: 4px solid #f3f3f3; border-top: 4px solid #3498db; border-radius: 50%; animation: rotate 1s linear infinite;}
这个效果利用了不同颜色的顶部边框,在圆形元素上旋转,形成动态加载感。
基本上就这些。掌握@keyframes和transform: rotate()的配合,再调整好动画速度和中心点,就能实现各种旋转效果。不复杂但容易忽略细节。
以上就是如何用css animation实现旋转动画效果的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1001542.html
微信扫一扫
支付宝扫一扫