HTML5如何批量生成滚动文字_用模板字符串循环插入DOM【方法】-html教程

不推荐使用marquee标签,HTML5已废弃;应采用CSS动画或JavaScript实现滚动,前者轻量高效,后者更灵活可控。

滚动文字用 marquee 标签还行吗?

不行。HTML5 已废弃 marquee,现代浏览器虽多数仍能渲染,但不保证兼容性,且无法精准控制速度、暂停、方向等行为。W3C 明确不推荐,CSS 动画或 JavaScript 才是正解。

用 CSS @keyframes + animation 实现批量滚动

这是最轻量、性能最好、也最容易批量生成的方式。核心思路是:用 JS 拼接 HTML 字符串(模板字符串),插入容器,再靠 CSS 统一驱动滚动动画。

  • 滚动容器必须设 white-space: nowrap 和固定宽度/溢出隐藏
  • 每个滚动项需包裹在独立 或
    中,并设 display: inline-block 避免换行挤压

  • 动画时长和延迟要根据文字长度动态计算,否则短文本会“闪退”,长文本会卡顿
  • const texts = ['前端开发', 'React 19', 'TypeScript 5.4', 'Vite 5'];
    const container = document.getElementById('ticker');
    const html = texts.map((text, i) => `
      ${text}
    `).join('');
    container.innerHTML = html;

    CSS 部分需配合:

    @keyframes ticker-move {
      0% { transform: translateX(100%); }
      100% { transform: translateX(-100%); }
    }
    .ticker-item {
      display: inline-block;
      margin-right: 2rem;
      animation: ticker-move 15s linear infinite;
      animation-delay: var(--delay);
    }

    用 requestAnimationFrame 手动滚动更可控

    当需要响应鼠标悬停暂停、点击跳转、或与滚动位置联动时,CSS 方案不够灵活。此时应改用 JS 控制位移,模板字符串依然用于初始 DOM 插入,但后续靠帧循环更新 transform。

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

夏夕资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"zy.lucklyus.top",如遇到无法解压的请联系管理员!
夏夕资源网-网站模板_免费源码_资源素材 » HTML5如何批量生成滚动文字_用模板字符串循环插入DOM【方法】-html教程
在线时间:12:00 - 22:00
关注微信公众号:微信公众号
站长邮箱:[email protected]
  • 运营天数: 1391+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 3991913+
  • 本周更新: 0+
  • 最后更新: 2026-03-16

本站指数

×
  • 运营天数: 1391+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 3991914+
  • 本周更新: 0+
  • 最后更新: 2026-03-16