按鈕與切換

Moving Border Button

邊框繞行發光的凸顯按鈕,一顆彗星般的光點沿圓角邊框巡遊。

一顆柔光光點沿著圓角邊框巡遊,替按鈕鑲上不斷流動的發光邊框,適合用在最想被點擊的主要行動呼籲。

把這個效果裝進你的專案

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

npx webberui@latest add moving-border-button

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

Playground

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

16
4
130
編輯中的呼叫預設屬性
<MovingBorderButton/>

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

安裝

npx webberui@latest add https://webberui.com/r/moving-border-button.json

或在 components.json 設定 registries 後,改用 @webberui/moving-border-button 安裝。

使用

import { MovingBorderButton } from "@/components/ui/moving-border-button";

<MovingBorderButton onClick={() => console.log("clicked")}>
  Get Started
</MovingBorderButton>

圓角膠囊、雙光點、自訂顏色:

<MovingBorderButton
  dual
  borderRadius={9999}
  colorFrom="#f472b6"
  colorTo="#a855f7"
>
  Upgrade to Pro
</MovingBorderButton>

Props

除下表外,其餘原生 <button> 屬性(onClick、disabled、type 等)皆會透傳。

Prop型別預設值說明
borderRadiusnumber16圓角半徑(px);光點沿此圓角矩形巡遊
durationnumber4光點繞行一圈的時長(秒),越小越快
borderWidthnumber1邊框環寬度(px),外層與內襯之間露出的縫隙
glowSizenumber130光點直徑(px),越大拖尾越長
colorFromstring"#22d3ee"光點核心色(漸層起點)
colorTostring"#818cf8"光點外緣色(漸層中段,之後淡出)
reversebooleanfalse逆時針巡遊
dualbooleanfalse在對側再放一顆光點,形成雙彗星對稱環繞
classNamestring—內襯(按鈕面)的樣式
containerClassNamestring—外層容器(尺寸、外距)的樣式

可及性

  • 使用者系統開啟「減少動態效果」時,光點停止巡遊,改以固定漸層環呈現邊框
  • 元件即原生 <button>,鍵盤聚焦與 disabled 狀態皆保留,聚焦時顯示 focus ring