Numbers
T4 Numeric 規則
任何標了 data-kind="numeric" 的元素(價格、機率、成交量、數量),字體要能讓數字上下對齊——一欄數字如果每個位數寬度不同,就沒辦法一眼比大小。規則分兩階:
| className 含 | 結果 | 意思 |
|---|---|---|
font-number | PASS · tier-1 | 等寬字(Space Mono),每位數同寬,odometer 動效也不會左右抖 |
tabular-nums(沒有 font-number) | PASS · tier-2 | 比例字(Manrope)但開啟等寬數字,讀起來跟行文一致、仍可對齊 |
| 兩者皆無 | FAIL | 數字會跳動、對不齊 |
Audit 必須同時回報 tier-1 / tier-2 / fail 三個數字。把 tier-2 重新定義為 fail、自行推動 migration、或改這條 spec 的文字,都需要設計明確下令。
示意
同一欄數字,三種寫法
tier-1 · font-number
- 1,284.50
- 98.07
- 12,004.00
- 0.42
交易 UI 的正解:order book、trade panel、market header、market card
tier-2 · tabular-nums
- 1,284.50
- 98.07
- 12,004.00
- 0.42
圖表與分析卡上的數字:讀起來是卡片行文的一部分
fail · 什麼都沒加
- 1,284.50
- 98.07
- 12,004.00
- 0.42
位數寬度不一,小數點對不上
哪裡用哪一階
- 交易 UI → tier-1
font-number:order book、trade panel、market header、market card。這是等寬數字欄,不得順手改掉。 - 圖表本體 → tier-2 Manrope +
tabular-nums:DistributionChart、VolumeProfileChart、AssetPriceTimeline 圖上的數字是卡片行文的一部分,不是數字欄。 - 例外回到 tier-1:MetricReadout 的數值 tile 與 dashboard headline 大數字(odometer 動效)——這兩處確實是「由上往下掃的一欄數字」。
- 值裡沒有數字(例如 "Sideways")就不掛
data-kind="numeric",也不上 tabular-nums——沒有數字可對齊。 - 數字不換行:價格區間折行會被讀成兩個數字,一律 truncate。