Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

css文字一个个慢慢出现效果

作者:视同仁寤戬   发布日期:2026-08-04   浏览:47

/* CSS代码 */
@keyframes fadeInText {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-text {
  opacity: 0;
  animation: fadeInText 0.5s ease-out forwards;
}

/* HTML代码 */
<div class="text-container">
  <span class="fade-in-text">H</span>
  <span class="fade-in-text">e</span>
  <span class="fade-in-text">l</span>
  <span class="fade-in-text">l</span>
  <span class="fade-in-text">o</span>
</div>

/* JavaScript代码 */
document.addEventListener("DOMContentLoaded", function() {
  const textContainer = document.querySelector('.text-container');
  const letters = textContainer.querySelectorAll('.fade-in-text');

  letters.forEach((letter, index) => {
    setTimeout(() => {
      letter.style.animationDelay = `${index * 0.2}s`;
      letter.style.opacity = '1';
    }, index * 200);
  });
});

解释说明:

  1. CSS部分:

    • @keyframes fadeInText 定义了一个动画,从透明度为0且有向下偏移的位置(translateY(20px))到透明度为1且无偏移的位置。
    • .fade-in-text 类设置了初始透明度为0,并应用了上述动画,持续时间为0.5秒,缓动函数为ease-out,并且动画结束后保持最终状态。
  2. HTML部分:

    • 使用<span>标签将每个字母包裹起来,并给每个字母添加fade-in-text类。这样可以逐个控制每个字母的动画效果。
  3. JavaScript部分:

    • 在页面加载完成后,通过遍历所有带有fade-in-text类的元素,使用setTimeout为每个字母设置不同的延迟时间,从而实现逐个字母依次出现的效果。每个字母之间的延迟时间为200毫秒(即0.2秒)。

上一篇:css下划线与字体间距

下一篇:css文字换行后行距太大怎么调整

大家都在看

css好看的字体

css 红色

css 瀑布流布局grid

css盒子

css字体加粗怎么设置的

css三种引入方式

换行 css

css设置文字不换行

css文字超长省略号

css图片铺满整个背景

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站