登录
首页 >  文章 >  前端

HTML5确实移除了marquee标签,但可通过CSS实现类似效果。

时间:2026-01-21 18:18:50 279浏览 收藏

本篇文章向大家介绍《html4的marquee标签被html5删除了吗?》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。

标签在HTML5中已被废弃,推荐用CSS animation+transform实现无缝滚动,兼顾可访问性、性能及交互控制,并适配prefers-reduced-motion与移动端优化。

html4的marquee标签被html5删了吗_滚动文字怎么做【技巧】

marquee 标签在 HTML5 中确实被废弃了

是的, 标签在 HTML5 规范中**不被支持**,既不是有效元素,也不在任何现代标准中保留。浏览器虽大多仍能渲染(出于兼容性),但 W3C 明确将其列为“非标准、不推荐使用”。用它会导致 HTML 验证失败,且无法通过无障碍检测(如 screen reader 通常忽略或误读)。

CSS animation 实现滚动文字最稳妥

替代 的主流方案是用 animation + transform,控制 translateXtranslateY。关键点在于:动画需无缝循环、避免跳帧、适配不同长度文本。

  • @keyframes 定义从 100%-100% 的位移(不是 0%100%),否则会闪回
  • 容器设 overflow: hidden,子元素设 white-space: nowrap 防止换行
  • 动画时长根据内容长度动态调整更自然;固定时长下,文本越长,视觉速度越慢
  • will-change: transform 可提升滚动流畅度(尤其低端设备)
@keyframes scroll-left {
  from { transform: translateX(100%); }
  to   { transform: translateX(-100%); }
}
.scrolling-text {
  overflow: hidden;
  white-space: nowrap;
}
.scrolling-text span {
  display: inline-block;
  animation: scroll-left 15s linear infinite;
  will-change: transform;
}

JavaScript 滚动更适合动态/交互场景

当需要暂停/加速/反向/按按钮控制,或文本内容频繁更新时,CSS 方案受限(需重写 keyframes 或 JS 操作 style)。此时用 requestAnimationFrame 手动驱动位移更灵活。

  • 避免用 setInterval,易因帧率波动导致卡顿
  • 位移量应基于时间差(deltaTime)计算,而非固定步长,保证跨设备速度一致
  • 暂停时记得调用 cancelAnimationFrame,防止内存泄漏
  • 若文本过短,需拼接两份内容(textContent + textContent)才能实现无缝

别忽略可访问性和性能细节

滚动文字本质是运动干扰项,对部分用户(如眩晕症、注意力障碍)不友好。WCAG 要求提供暂停/停止机制。同时,持续动画会触发浏览器每帧重绘,若页面存在多个滚动区域,可能明显拖慢低端设备。

  • 务必加 prefers-reduced-motion 媒体查询降级:@media (prefers-reduced-motion: reduce) { animation: none; }
  • 移动端慎用——iOS Safari 对 transform 滚动优化较差,长文本易掉帧
  • 如果只是“通知类”短文案(如“促销进行中”),用 CSS transition + hover 触发比自动滚动更克制

真正难的不是让字动起来,而是让它动得合理、可控、不伤人。很多项目卡在“怎么让停按钮生效”或者“为什么 iOS 上一卡一卡”,问题往往出在动画策略没和交互逻辑对齐。

本篇关于《HTML5确实移除了marquee标签,但可通过CSS实现类似效果。》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

最新阅读
更多>
课程推荐
更多>
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    立即学习 543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    立即学习 516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    立即学习 500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    立即学习 487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    立即学习 485次学习