讲师中心 微信公众号
AI工具推荐 视频效率加速

CSS 实现多字母环形动画的完整教程

落婷君_3673

落婷君_3673

发布时间:2025-12-29 19:32:27

|

1034人浏览过

|

来源于php中文网

原创

CSS 实现多字母环形动画的完整教程

本文详解如何使用 css `transform` 的 `rotate()` 与 `translatex()` 组合,为多个独立字母创建各自半径、方向和节奏不同的环形运动动画,并提供可复用的代码结构与关键原理说明。

在 CSS 中实现真·环形路径动画(即元素沿圆形轨迹匀速/缓动运动),核心在于理解“旋转坐标系 + 平移位移”的组合逻辑:通过 rotate() 先旋转整个坐标系,再用 translateX() 沿当前 X 轴平移固定距离,最后反向旋转归位——这样元素视觉上就围绕父容器中心做圆周运动。

✅ 正确原理示意(以单字母为例):transform: rotate(θ) translateX(r) rotate(-θ) 其中 r 是圆半径,θ 是当前旋转角度。当 θ 从 0° 变化到 360°,元素将沿半径为 r 的圆完成一周运动。

但注意:原问题中仅用 from/to 两帧无法形成闭环圆弧,因为 translateX(150px) 始终固定,缺少角度驱动的动态位移。真正可行的方案是分阶段定义关键帧,让每个字母在动画周期内经历“出发 → 顶点 → 返回”过程,从而模拟不同节奏与方向的环形轨迹。

以下是一个结构清晰、可扩展的实现方案:

Plan Dubai Travel — Flights, Hotels, Burj Khalifa, Desert Safari, Malls & Itineraries
Plan Dubai Travel — Flights, Hotels, Burj Khalifa, Desert Safari, Malls & Itineraries

规划您的迪拜之旅 — 哈利法塔观景、沙漠探险、迪拜购物中心购物、棕榈岛度假村及黄金市场砍价。还提供支持...

下载

✅ 完整可运行代码(含三字母差异化动画)

.animation-container {
  display: flex;
  position: relative;
  top: 10rem;
  left: 50%;
  transform: translateX(-50%); /* 更健壮的居中方式 */
  align-items: center;
  justify-content: center;
  height: 300px; /* 提供明确容器高度,便于视觉参考 */
}

.letter {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 10px;
  position: absolute; /* 各字母绝对定位,避免 flex 干扰轨迹 */
}

.letter.X { animation: move-letter_x 4s ease-in-out infinite; }
.letter.Y { animation: move-letter_y 4s ease-in-out infinite; }
.letter.Z { animation: move-letter_z 4s ease-in-out infinite; }

/* X:顺时针小半径环形,偏右上方 */
@keyframes move-letter_x {
  0%   { transform: rotate(0deg) translateX(120px) rotate(0deg); }
  25%  { transform: rotate(90deg) translateX(120px) rotate(-90deg); }
  50%  { transform: rotate(180deg) translateX(120px) rotate(-180deg); }
  75%  { transform: rotate(270deg) translateX(120px) rotate(-270deg); }
  100% { transform: rotate(360deg) translateX(120px) rotate(-360deg); }
}

/* Y:逆时针中半径,偏左下方(通过负 translateX + 相位偏移实现) */
@keyframes move-letter_y {
  0%   { transform: rotate(0deg) translateX(-100px) rotate(0deg); }
  25%  { transform: rotate(-90deg) translateX(-100px) rotate(90deg); }
  50%  { transform: rotate(-180deg) translateX(-100px) rotate(180deg); }
  75%  { transform: rotate(-270deg) translateX(-100px) rotate(270deg); }
  100% { transform: rotate(-360deg) translateX(-100px) rotate(360deg); }
}

/* Z:椭圆倾向(Y轴缩放+不同半径),上下摆动感更强 */
@keyframes move-letter_z {
  0%   { transform: rotate(0deg) translateX(0) translateY(-80px) rotate(0deg); }
  25%  { transform: rotate(90deg) translateX(140px) translateY(0) rotate(-90deg); }
  50%  { transform: rotate(180deg) translateX(0) translateY(80px) rotate(-180deg); }
  75%  { transform: rotate(270deg) translateX(-140px) translateY(0) rotate(-270deg); }
  100% { transform: rotate(360deg) translateX(0) translateY(-80px) rotate(-360deg); }
}
<div class="animation-container">
  <div class="letter X">X</div>
  <div class="letter Y">Y</div>
  <div class="letter Z">Z</div>
</div>

? 关键要点与注意事项

  • 必须为每个字母单独定义动画类名(如 .letter.X),避免共用同一 @keyframes 导致同步运动;
  • 推荐使用 0%–100% 多段关键帧(而非 from/to),便于控制速度曲线、方向反转与停顿效果;
  • transform-origin 默认为 center,若需调整旋转中心(如绕左上角转),请显式设置 transform-origin: 0 0;;
  • 性能优化:仅使用 transform 和 opacity 触发 GPU 加速,避免 top/left 等引发重排;
  • 响应式适配:半径值(如 120px)建议替换为 vw 或 rem 单位,例如 translateX(20vw),确保不同屏幕下比例协调;
  • 调试技巧:临时添加 border: 1px solid red; 和 background: rgba(0,0,0,0.2); 到 .letter,直观观察运动路径。

? 进阶提示

若需更精确的贝塞尔环形路径(如完美匀速圆周),可结合 CSS Houdini 或 SVG ;但在绝大多数交互动画场景中,上述 rotate + translateX 多帧方案已足够灵活、轻量且兼容性优秀(支持 Chrome 4+, Firefox 16+, Safari 9+)。

立即学习“前端免费学习笔记(深入)”;

掌握这一模式后,你不仅能实现 XYZ 的环形舞动,还可轻松扩展为单词粒子、加载指示器、品牌动态 Logo 等创意效果。

热门AI工具

更多
PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

相关专题

更多
chrome什么意思
chrome什么意思

chrome是浏览器的意思,由Google开发的网络浏览器,它在2008年首次发布,并迅速成为全球最受欢迎的浏览器之一。本专题为大家提供chrome相关的文章、下载、课程内容,供大家免费下载体验。

2786

2023.08.11

chrome无法加载插件怎么办
chrome无法加载插件怎么办

chrome无法加载插件可以通过检查插件是否已正确安装、禁用和启用插件、清除插件缓存、更新浏览器和插件、检查网络连接和尝试在隐身模式下加载插件方法解决。更多关于chrome相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

5559

2023.11.06

Chrome开启无痕模式
Chrome开启无痕模式

本专题整合了Chrome无痕模式开启相关内容,阅读专题下面的文章了解更多详细教程。

3967

2026.03.24

html边框设置教程
html边框设置教程

本教程将带你全面掌握HTML/CSS边框设置,从基础的border属性讲起,涵盖所有边框样式、圆角设置及高级技巧,帮助你快速上手实现各种边框效果。

2693

2025.09.02

PHP 高并发与性能优化
PHP 高并发与性能优化

本专题聚焦 PHP 在高并发场景下的性能优化与系统调优,内容涵盖 Nginx 与 PHP-FPM 优化、Opcode 缓存、Redis/Memcached 应用、异步任务队列、数据库优化、代码性能分析与瓶颈排查。通过实战案例(如高并发接口优化、缓存系统设计、秒杀活动实现),帮助学习者掌握 构建高性能PHP后端系统的核心能力。

18133

2025.10.16

PHP 数据库操作与性能优化
PHP 数据库操作与性能优化

本专题聚焦于PHP在数据库开发中的核心应用,详细讲解PDO与MySQLi的使用方法、预处理语句、事务控制与安全防注入策略。同时深入分析SQL查询优化、索引设计、慢查询排查等性能提升手段。通过实战案例帮助开发者构建高效、安全、可扩展的PHP数据库应用系统。

433

2025.11.13

JavaScript 性能优化与前端调优
JavaScript 性能优化与前端调优

本专题系统讲解 JavaScript 性能优化的核心技术,涵盖页面加载优化、异步编程、内存管理、事件代理、代码分割、懒加载、浏览器缓存机制等。通过多个实际项目示例,帮助开发者掌握 如何通过前端调优提升网站性能,减少加载时间,提高用户体验与页面响应速度。

328

2025.12.30

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

323

2026.03.06

Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

60

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 1.5万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 6.1万人学习

CSS教程
CSS教程

共754课时 | 98.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn