diff --git a/.ua/visual-baseline.json b/.ua/visual-baseline.json index b9cc6b3..3e986db 100644 --- a/.ua/visual-baseline.json +++ b/.ua/visual-baseline.json @@ -1,17 +1,17 @@ { "$schema": "视觉漂移基线:各类硬编码视觉字面量的允许上限,任一类超出即 ua audit:visual 退出码 1;迁移后用 --baseline 重写", "file": "packages/skin/ui/ui.css", - "commit": "8fffaf5", - "generatedAt": "2026-10-26T09:55:54.728Z", + "commit": "4f2ee02", + "generatedAt": "2026-10-26T09:57:48.041Z", "lines": 4874, - "total": 13, + "total": 0, "counts": { "font-size-literal": 0, "duration-literal": 0, "shadow-literal": 0, "radius-literal": 0, "focus-ring-variant": 0, - "space-literal": 13, + "space-literal": 0, "control-h-literal": 0, "weight-literal": 0, "leading-literal": 0, diff --git a/llms-full.txt b/llms-full.txt index b93e9ad..d78e60d 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -2192,6 +2192,8 @@ node packages/tools/cli/bin/ua.js |docs|tokens - --ua-space-25: 10px - --ua-space-35: 14px - --ua-space-table-cell: var(--ua-space-2) var(--ua-space-3) +- --ua-space-6: 24px +- --ua-space-indent: 22px - --ua-font-size-xs: 11px - --ua-font-size-sm: 12px - --ua-font-size-md: 13px diff --git a/packages/design/tokens/tokens.css b/packages/design/tokens/tokens.css index c059e13..0131491 100644 --- a/packages/design/tokens/tokens.css +++ b/packages/design/tokens/tokens.css @@ -30,6 +30,8 @@ --ua-space-25: 10px; /* 二档半:标准控件内距(介于 8 与 12 之间的既有主流值) */ --ua-space-35: 14px; /* 三档半:宽松行内距(列表行 / 菜单行) */ /* 间距 4 档:区块内边距、卡片间距 */ --ua-space-table-cell: var(--ua-space-2) var(--ua-space-3); /* 表格单元格内边距:上下 2 档 / 左右 3 档 */ + --ua-space-6: 24px; /* 六档:空状态整行留白等大面积竖直呼吸(比 4 档再松一档,不进半步梯子) */ + --ua-space-indent: 22px; /* 层级缩进:树 / 时间线每级缩进量与图标列宽度对齐,不参与常规内距梯子 */ /* ---- 字号:五档主轴 + 三档展示字号 + 两档相对缩放(10/11px 统一归入 xs,避免单独成档) ---- */ --ua-font-size-xs: 11px; /* 最小字号:角标 / 辅助说明 / 密排表格 */ diff --git a/packages/design/tokens/tokens.json b/packages/design/tokens/tokens.json index 77e71eb..1fb681c 100644 --- a/packages/design/tokens/tokens.json +++ b/packages/design/tokens/tokens.json @@ -55,7 +55,9 @@ "15": "6px", "25": "10px", "35": "14px", - "05": "2px" + "05": "2px", + "6": "24px", + "indent": "22px" }, "fontSize": { "xs": "11px", diff --git a/packages/skin/ui/ui.css b/packages/skin/ui/ui.css index 553f823..94d2f0e 100644 --- a/packages/skin/ui/ui.css +++ b/packages/skin/ui/ui.css @@ -214,7 +214,7 @@ body.ua-col-resizing { .ua-empty-row td { text-align: center; color: var(--ua-color-text-muted); - padding: 28px var(--ua-space-3); + padding: var(--ua-space-6) var(--ua-space-3); } .ua-empty-tip { display: inline-block; @@ -935,7 +935,7 @@ body.ua-col-resizing { } .ua-input-number .ua-btn { height: auto; /* 步进器是图标按钮:不吃控件统一高度 */ - padding: 5px var(--ua-space-3); /* 收窄为步进按钮 */ + padding: var(--ua-space-15) var(--ua-space-3); /* 收窄为步进按钮:竖直 6 */ line-height: var(--ua-leading-tight); } .ua-input-number-field { @@ -997,7 +997,7 @@ body.ua-col-resizing { content: ''; /* 连接线:与前一节点之间的横向短线 */ width: 20px; height: 1px; - margin-top: 13px; + margin-top: var(--ua-space-35); margin-right: var(--ua-space-2); background: var(--ua-border-subtle); flex-shrink: 0; @@ -1178,7 +1178,7 @@ button.ua-step-dot:hover { } .ua-badge-count { min-width: 18px; - padding: 0 5px; + padding: 0 var(--ua-space-15); text-align: center; font-variant-numeric: tabular-nums; background: var(--ua-color-danger); @@ -1576,7 +1576,7 @@ button.ua-step-dot:hover { border-bottom: 1px solid var(--ua-border-subtle); } .ua-tab { - padding: 7px var(--ua-space-35); + padding: var(--ua-space-15) var(--ua-space-35); border: none; background: none; color: var(--ua-color-text-muted); @@ -1680,7 +1680,7 @@ button.ua-step-dot:hover { } .ua-form-label { display: inline-flex; - gap: 3px; + gap: var(--ua-space-1); font-size: var(--ua-font-size-sm); color: var(--ua-color-text-muted); } @@ -2165,14 +2165,14 @@ button.ua-step-dot:hover { } .ua-tl-item { position: relative; - padding: 0 0 var(--ua-space-3) 22px; + padding: 0 0 var(--ua-space-3) var(--ua-space-indent); animation: ua-tl-in var(--ua-duration-base) ease-out both; } .ua-tl-item:last-child { padding-bottom: 0; } .ua-tl-right .ua-tl-item { - padding: 0 22px var(--ua-space-3) 0; + padding: 0 var(--ua-space-indent) var(--ua-space-3) 0; text-align: right; } .ua-tl-right .ua-tl-item:last-child { @@ -2207,7 +2207,7 @@ button.ua-step-dot:hover { .ua-tl-alternate .ua-tl-item.is-right { width: auto; margin-left: 0; - padding: 0 0 var(--ua-space-3) 22px; + padding: 0 0 var(--ua-space-3) var(--ua-space-indent); text-align: left; } .ua-tl-alternate .ua-tl-dot, @@ -2308,7 +2308,7 @@ button.ua-step-dot:hover { .ua-seg-btn { position: relative; z-index: 1; - padding: 5px var(--ua-space-35); + padding: var(--ua-space-15) var(--ua-space-35); border: 0; border-radius: 999px; background: transparent; @@ -2334,7 +2334,7 @@ button.ua-step-dot:hover { cursor: not-allowed; } .ua-segmented-sm .ua-seg-btn { - padding: 3px var(--ua-space-25); + padding: var(--ua-space-1) var(--ua-space-25); font-size: var(--ua-font-size-sm); } .ua-segmented.is-disabled { @@ -2447,7 +2447,7 @@ button.ua-step-dot:hover { .ua-stat-value { display: inline-flex; align-items: baseline; - gap: 3px; + gap: var(--ua-space-1); } .ua-stat-num { color: var(--ua-color-text); @@ -2674,7 +2674,7 @@ button.ua-step-dot:hover { gap: var(--ua-space-2); } .ua-tree-search { - padding: 5px var(--ua-space-25); + padding: var(--ua-space-15) var(--ua-space-25); border: 1px solid var(--ua-color-border); border-radius: var(--ua-radius-md); background: var(--ua-color-bg);