文字動畫

Split Flap Board

Vestaboard 式機械分裂翻牌字元切換,逐格滾動落定,支援多則訊息輪播。

這是 WebberUI Pro 元件

下方的安裝指令需要授權才能執行,未授權時會回 401。

怎麼安裝 Pro 元件 →查看方案 →

機場/車站看板的機械翻牌效果。每格從當前字元沿字元表一格一格向前翻,翻牌數不同讓各格錯落停定,形成經典的機械揭示波紋。

把這個效果裝進你的專案

在專案資料夾執行指令,CLI 會加入原始碼與依賴套件,再依下方使用範例引用元件。

npx webberui@latest add "https://webberui.com/r/split-flap-board.json?t=<安裝 token>"

還沒有專案,或安裝遇到問題?看快速開始 →

Playground

即時調整 props、程式碼片段同步更新——直接試出你要的樣子再複製。

46
70
45
編輯中的呼叫預設屬性
<SplitFlapBoard/>

完整範例包含預覽的排版與資料。先安裝元件,再把範例檔貼入你的專案。

安裝

npx webberui@latest add "https://webberui.com/r/split-flap-board.json?t=<安裝 token>"

或在 components.json 設定 registries 後,改用 @webberui/split-flap-board 安裝。

使用

import { SplitFlapBoard } from "@/components/ui/split-flap-board";

<SplitFlapBoard text="ON TIME" />

多則訊息會依 interval 自動輪播:

<SplitFlapBoard
  messages={["DEPARTURES", "NOW BOARDING", "GATE A12"]}
  interval={2600}
  cols={12}
/>

以 \n 換行可排出多列看板,並用 background 與 color 換配色。

Props

Prop型別預設值說明
textstring""顯示文字,支援以 \n 換行;提供 messages 時忽略
messagesstring[]—依序循環輪播的多則訊息
intervalnumber2800輪播間隔(毫秒),僅在 messages 多於一則時生效
colsnumber最長行固定欄數;未提供時取所有訊息中最長一行
align"left" | "center""center"每行在欄內的對齊方式
flipDurationnumber70單次翻牌時長(毫秒),越小翻得越快
staggernumber45每往右一欄追加的起翻延遲(毫秒)
sizenumber46單格高度(像素),寬度與字級依此推算
charsetstring字母數字符號可翻到的字元表,首格須為空白
backgroundstring"#161616"翻牌底色
colorstring"#f5f5f4"字元顏色

可及性

  • 使用者系統開啟「減少動態效果」時,翻牌動畫關閉,直接顯示最終字元
  • 看板帶 role="img" 與 aria-label(完整訊息文字),個別翻牌格對輔助科技隱藏(aria-hidden)
  • 字元表以偽隨機起翻延遲驅動波紋,取值由座標決定,避免 SSR 與客端 hydration 不一致