8pt

Marquee

无缝跑马灯•动效
介绍

两行反向滚动的标签带,边缘渐隐,悬停暂停。内容复制一份实现无缝循环。

纯 HTML、CSS 与少量原生 JS,没有框架依赖。复制提示词交给 Claude Code、Cursor、Trae 或 Codex,模型会把 Marquee 加进你的项目并换成你的配色。

适用场景

滚动、悬停与入场动效,给页面增加节奏感;动效只用 transform 和 opacity。

安装

订阅 Builder 后,用 8pt CLI 装进项目,或在已接入 8pt MCP 的编辑器里直接调用。

$ npm i -g @8pt-dev/cli && 8pt add marquee
mcp › 使用 8pt MCP 调用 get_component("marquee")

代码

Marquee 的源码,动效只用 transform 与 opacity,并尊重减少动态效果设置。

<div class="x-mq">
  <div class="x-mq__row"><div class="x-mq__track">
    <span>Grid</span><span>Type</span><span>Motion</span><span>Token</span><span>Radius</span><span>Shadow</span><span>Layout</span><span>Color</span>
  </div></div>
  <div class="x-mq__row x-mq__row--rev"><div class="x-mq__track">
    <span>间距</span><span>字号</span><span>行高</span><span>栅格</span><span>对比度</span><span>层级</span><span>节奏</span><span>留白</span>
  </div></div>
</div>
.x-mq{display:grid;gap:12px;width:100%}
.x-mq__row{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 78%,transparent 100%)}
.x-mq__track{display:flex;gap:10px;width:max-content;animation:x-mq 22s linear infinite}
.x-mq__row--rev .x-mq__track{animation-direction:reverse;animation-duration:26s}
.x-mq:hover .x-mq__track{animation-play-state:paused}
.x-mq span{flex:none;padding:10px 18px;border-radius:12px;border:1px solid var(--d-line,rgba(255,255,255,.1));background:var(--d-card,#101016);color:var(--d-fg,#fff);font:600 14px/1 var(--d-font,system-ui,sans-serif)}
.x-mq__row--rev span{color:var(--d-muted,#a0a0ab)}
@keyframes x-mq{to{transform:translateX(calc(-50% - 5px))}}
const init = (root) => {
  root.querySelectorAll('.x-mq__track').forEach(t => t.innerHTML += t.innerHTML.replace(/<span>/g, '<span aria-hidden="true">'));
};
订阅 Builder 查看完整源码。查看价格

更多动效组件

查看全部

Model Pill Marquee

更多组件

查看全部

AI Prompt Composer

Film Strip Carousel

Auto Tab Showcase

Media Bento Grid

Agent Chat Window

Director Art Cards

Mac File Window

Disk Cleanup Panel

继续探索