掌握CSS的transform rotate与animation结合使用,可实现加载图标匀速旋转、悬停交互及摆动等动态效果,提升网页视觉体验。

让元素动起来,是提升网页视觉体验的重要方式。CSS动画(animation)与变换属性(transform: rotate())结合使用,可以轻松实现平滑的旋转效果,比如加载图标、悬浮按钮、动态导航等。下面通过实际例子,带你掌握这种常见而实用的技术组合。
CSS 的 transform: rotate() 用于对元素进行二维旋转,单位是 deg(度)。例如 rotate(45deg) 表示顺时针旋转45度,rotate(-90deg) 表示逆时针旋转90度。
animation 属性则用来定义动画的关键帧、持续时间、重复次数等。它通常配合 @keyframes 使用。
常用属性包括:常见的圆形加载动画就是 transform rotate 的典型应用。我们让一个圆形 div 不停地绕中心旋转。
立即学习“前端免费学习笔记(深入)”;
HTML 结构:
<div class="loader"></div>
CSS 样式:
.loader {
width: 50px;
height: 50px;
border: 5px solid #f3f3f3;
border-top: 5px solid #3498db;
border-radius: 50%;
margin: 100px auto;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}这里的关键是 @keyframes 中从 0deg 到 360deg 的变化,配合 linear 时间函数,实现匀速旋转。border-top 着色制造出“进度感”。
交互式旋转也很常见,比如鼠标悬停时图标旋转。这时可以用 :hover 配合 transition 或 animation 实现。
示例:一个图标在鼠标移上时顺时针转90度,移开后复原。
.icon {
display: inline-block;
padding: 10px;
font-size: 24px;
transition: transform 0.3s ease;
}
.icon:hover {
transform: rotate(90deg);
}虽然这里用了 transition,但也可以用 animation 实现更复杂的路径。transition 更适合简单状态切换,animation 更适合自定义轨迹。
想做出更生动的效果?可以结合多个 rotate 值和缓动函数。
比如让一个通知图标轻微摆动,吸引用户注意:
@keyframes wobble {
0%, 100% {
transform: rotate(0deg);
}
25% {
transform: rotate(5deg);
}
75% {
transform: rotate(-5deg);
}
}
.badge {
animation: wobble 2s ease-in-out infinite;
}这个动画在左右5度之间来回摆动,模拟轻微晃动,不会太突兀,适合提示类元素。
基本上就这些。掌握 transform rotate 和 animation 的搭配,能让你的页面元素“活”起来。关键在于合理设计关键帧,控制旋转角度和节奏,避免过度动画影响用户体验。
以上就是CSS动画与Transform rotate结合应用_旋转动画实践的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号