marquee标签的behavior、direction、loop是核心控制参数:behavior决定滚动模式(scroll/ slide/ alternate),direction控制方向,loop指定循环次数(对scroll无效);其非标准、已废弃,移动端不支持,推荐用CSS动画替代。

marquee 标签的 behavior、direction、loop 是核心控制参数
HTML 中没有语义化「字幕」标签,marquee 是唯一原生支持滚动文本的标签,但它是非标准、已废弃的(HTML5 不推荐使用)。它的行为由几个关键属性决定:behavior 控制滚动模式,direction 控制方向,loop 控制次数。
常见错误是直接写 却没设 behavior,结果默认 scroll(无限循环),但用户可能想要只播一次的提示条——这时得显式写 behavior="slide" 或 behavior="alternate"。
-
behavior="scroll":持续循环,停不下来(除非用 JS 调用stop()) -
behavior="slide":从起始位置滚到终点后停止,不返回 -
behavior="alternate":来回滚动,适合短通知;注意onbounce事件只在此模式下触发 -
loop="3"表示只执行 3 次完整滚动(对scroll无效,它无视该值)
scrollamount 和 scrolldelay 决定实际滚动速度
这两个参数看似简单,但容易误解:它们不是「每秒多少像素」或「毫秒级定时器」,而是浏览器内部的步进机制。真实表现受渲染帧率、CPU 负载影响,尤其在低端设备上可能卡顿或跳帧。
scrollamount 默认是 6,值越大单次移动越远,看起来越快;scrolldelay 默认是 85,值越大两次移动间隔越长,看起来越慢。但注意:小于 60 的 scrolldelay 值会被强制提升为 60,除非加 truespeed 属性。
- 想让滚动更平滑?别盲目调高
scrollamount,优先降低scrolldelay(如设为 60)并加truespeed - 移动端慎用:iOS Safari 完全不支持
marquee,Android Chrome 也已弃用,不会触发任何滚动 - 替代方案更可靠:用 CSS
@keyframes+transform: translateX()实现兼容滚动
onmouseover/stop 和 onmouseout/start 是最实用的交互组合
用户把鼠标移上去时希望暂停字幕,这是刚需。原生 marquee 提供了 stop() 和 start() 方法,配合事件绑定就能实现,无需额外 JS 库。
典型写法是:。但要注意两点:
- 如果页面加载后字幕已因 JS 或其他原因被
stop()过,onmouseout触发的start()可能无效——建议初始化时显式调用this.start() -
onfinish和onbounce在现代浏览器中基本不可靠,Chrome/Firefox 已不触发,不要依赖它们做逻辑分支 - 用
aria-live="polite"或role="log"补充可访问性,否则屏幕阅读器会忽略滚动内容
bgcolor、width、height 等样式类属性已被 CSS 全面接管
marquee 的 bgcolor、width、height、vspace 等属性属于 HTML 3.2 风格的内联样式控制,现代开发中应全部用 CSS 替代。
例如: 应改为:
<marquee style="background-color:#f0f0f0; width:100%; height:40px;"></marquee>
但更推荐彻底剥离样式逻辑,用独立 class:
<marquee class="news-ticker"></marquee>
然后在 CSS 中统一管理:
.news-ticker { background: #f0f0f0; height: 40px; line-height: 40px; }
-
marquee不支持 Flex/Grid 布局,其子元素无法用display: flex对齐 - 若需响应式宽度,
width="100%"在旧 IE 中有效,但现代 CSS 的max-width: 100%更可控 - 真正难搞的是垂直居中:必须靠
line-height匹配高度,或用伪元素 hack,纯vertical-align无效
用 marquee 的最大陷阱不是功能缺失,而是它掩盖了可访问性和兼容性问题。哪怕只是内部管理系统,也建议用 CSS 动画 + JS fallback 方案——因为一旦需求变成「支持读屏软件」「适配平板横屏」「滚动中途更新内容」,原生标签立刻崩盘。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











