CSS实现文字依次出现的核心是为每个span设置递增的animation-delay并配合统一@keyframes动画,需加forwards保持终态,注意时长与延迟协调及无障碍适配。
用 CSS 实现 banner 中文字“依次出现”,核心思路是:给每个文字(或词)单独设置 animation-delay,配合同一个 @keyframes 动画控制透明度/位移等入场效果。关键在于“延迟错开”,而非逐个写不同动画。
避免用一整段文字直接动画(无法分字控制),推荐将每个字或关键词用 span 包裹:
用 @keyframes 定义一个简洁的淡入+微上浮效果(也可加 scale 或 translateX):
city: 0; transform: translateY(20px); }给每个 span 设置递增的 animation-delay,例如每字间隔 0.2s:
✅ 小技巧:若字数多,可用 CSS 自定义属性 + calc 简化(现代浏览器支持):
.banner span {forwards,让动画结束后保持最终状态(否则会闪回透明)0.5s)和延迟步长(如 0.2s)需协调,避免重叠过密或空档太长@media 调小 delay 或禁用动画保性能aria-hidden="true" 或用 prefers-reduced-motion 关闭动画基本上就这些——不复杂但容易忽略 delay 和 forwards 的搭配。实际项目中,用 JS 动态生成 style 或配合 CSS-in-JS 也能批量注入 delay,但纯 CSS 方案更轻量、易维护。