Design SystemFoundationsSpacing

Spacing

Ruler

Live DS 未自訂 spacing token,沿用 Tailwind v4 預設(0.25rem × N)。 下表只列出 component implementation 真實出現過的階梯。

0

0px

0.5

2px

1

4px

1.5

6px

2

8px

3

12px

4

16px

5

20px

6

24px

7

28px

8

32px

12

48px

Gap Usage

按 component implementation 出現次數排序。

GAP TOKENS — IMPLEMENTATION COUNT

Token次數場景
gap-212icon + text、button group
gap-111row 內部 micro spacing
gap-36小區塊內部
gap-43—
gap-71outlier
gap-0.51outlier

VISUAL — GAP-1 / -2 / -3 / -4

gap-1

gap-2

gap-3

gap-4

Padding Usage

Implementation 出現 20+ 種 padding 組合,下表為前 20 名。

Token次數場景
p-113icon-only button、small chip
py-25—
px-25—
pr-15—
pl-55—
pl-35—
px-54—
px-34—
pr-54—
pr-34—
pl-24—
pl-14—
p-44card / modal body
px-43—
pb-13—
p-33—
py-32—
py-12—
p-52—
p-22—

Margin Usage

主要用於 stories 內部排版,implementation 真實使用較少。下表為前 5 名。

Token次數
mb-234
mt-217
mt-47
mb-47
ml-44

Implementation Notes

Observation only — no migration planned

本區僅記錄 audit 觀察,不對應任何 active rule 或重構計畫。

OBSERVATION

  • Gap 自然收斂為 gap-1 / -2 / -3 / -4 四階;gap-7、gap-0.5 各 1 次為 outlier。
  • Padding 出現 20+ 種組合,最常見 p-1(13×,icon-only button)。pl/pr 大量非對稱(pl-3+pr-5、pl-5+pr-3 各 4–5 次),暗示 input 內部 icon padding 規格但未抽成 token。
  • Margin 集中在 stories 排版用,implementation 真實用量小。

ANOMALIES

以下高度值在 Tailwind v4 雖然可解析(dynamic spacing),但跳脫常見階梯,行為靠 runtime 推導:

Table/index.tsx:449

h-45

DatePicker/TimePickerSection.tsx:38

h-60

Filter/index.tsx:203

max-h-90

FUTURE DIRECTION (NOT PLANNED)

若未來治理:padding 不適合抽 token,比較適合鎖在 component-level spec(每個元件的 padding 由元件 contract 定義)。gap 已自然收斂,無需動作。 現階段不執行。