Skip to content

Spin 載入 ​

Spin 是區塊載入指示:可單獨顯示品牌轉圈,或在內容上蓋一層柔白遮罩。Button 的載入與 Message 的載入共用同一種描邊;區塊遮罩由 Spin 負責。

示範 ​

尺寸

直徑為 sm 18、md 28、lg 40。描邊寬度 2 / 2.5 / 3。軌道是 25% 品牌色,頂端為實心品牌色,0.75 秒轉一圈。
sm 18
md 28
lg 40

包覆內容

有子內容且 show 時,遮罩為 color-mix(#fff 55%, transparent)。內容仍佔位,但沒有 pointer events。

課程詳情

內容在載入時仍佔位,但不可互動。

閒置

:show="false" 或 show="false" 會隱藏遮罩。spinning 是 show 的別名。

已載入完成

轉圈已隱藏,按鈕可以按。

繼續

延遲

delay 是出現轉圈前的毫秒數。若 show 先結束,就不會閃一下。300–500ms 可避免極短請求的閃爍。預設為 0。

遮罩會等 400ms。在那之前關掉就不會出現。

400ms 後顯示隱藏

對話框頁尾的巢狀載入請看 Modal 對話框。按鈕內的轉圈是 Button 按鈕 的 loading,不是 Spin。

API ​

Spin 屬性 ​

屬性型別預設
showbooleantrue
spinningbooleanshow 的別名
size'sm' | 'md' | 'lg''md'
descriptionstring''
tipstringdescription 的別名
delaynumber0
stroke-widthnumber依尺寸 2 / 2.5 / 3

文件以 show 與 description 為準。v1 沒有事件。

Spin 插槽 ​

名稱說明
預設載入時要蓋住的內容,可省略

CSS Parts ​

Part說明
container定位遮罩。載入中為 aria-busy
content子內容
mask柔白遮罩。只在蓋住內容時出現
spinner狀態即時區域與轉圈
tip說明文字;沒有說明時為視覺隱藏的「載入中」/ “Loading”

無障礙 ​

  • 轉圈可見時,容器為 aria-busy="true",spinner 為 role="status" 且 aria-live="polite"。
  • 朗讀文字是 description / tip。沒有文字時,文件語言以 zh 開頭為「載入中」,否則為 “Loading”。
  • 閒置時移除 busy,spinner 為 aria-hidden。
  • 若 show 在 delay 結束前關掉,狀態不會暴露給輔助科技。