Archived
版本栏三改:显示完整 · 动作统一住顶部 · 「实现」明确为链接自活动库
· 栏宽 132 → 196–224:一版一行排满「v4 生效 10 节点 · 14 边」,不再挤成三行。
· 激活/停用 · 改名 · 删除收成**顶部动作条**(右端注明作用对象 v几,
换版看,条上的钮跟着换语义);行里只剩事实,不在行内展开小钮。
改名输入就地在动作条下方展开,不再吊在卡底。
· 「实现」行改口:标签「实现 · 链接自活动库」,空选项写
「从活动库链接一个活动 —— 未链接,激活会被拦」—— 节点不含实现,
链接才算装载,这层语义直接写在控件上。
五闸绿。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KeDBx2PHLavbURXB8LJJ7m
This commit is contained in:
@@ -521,7 +521,7 @@
|
||||
属性区从右侧窄栏挪到图下整行(g-wide),声明式契约细节再往下。 */
|
||||
/* 三栏(2026-07-30):左**窄**版本条 · 中流程图 · 右节点属性。
|
||||
右栏用包壳绝对定位 —— 行高由中栏的图定,属性长了在卡内滚,不把图拉长。 */
|
||||
.g-flowlab { display: grid; grid-template-columns: 132px minmax(0, 2.5fr) minmax(320px, 1.25fr); gap: 12px; align-items: stretch; }
|
||||
.g-flowlab { display: grid; grid-template-columns: minmax(196px, 224px) minmax(0, 2.5fr) minmax(320px, 1.25fr); gap: 12px; align-items: stretch; }
|
||||
.g-nodewrap { position: relative; min-height: 0; }
|
||||
.g-nodewrap > .g-nodecard { position: absolute; inset: 0; height: auto; }
|
||||
/* 版本卡:与右侧的图**等高**(grid stretch),版本多了在卡内滚,不把页面撑长。
|
||||
@@ -545,24 +545,27 @@
|
||||
.g-ver-new:disabled { opacity: .5; cursor: default; box-shadow: none; }
|
||||
.g-vercard-list { flex: 1; min-height: 0; overflow-y: auto; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
|
||||
|
||||
/* ── 窄版本条:一版一行(v几 + 状态 + 计数),动作只在**看着的那一版**上展开 ── */
|
||||
.g-verslim .g-vercard-h { padding: 30px 10px 16px; gap: 4px; }
|
||||
.g-verslim .g-vercard-list { padding: 10px 8px; gap: 6px; }
|
||||
.g-verrow { display: flex; flex-direction: column; border: 1px solid var(--sh-line); border-left: 3px solid var(--sh-steel); background: #fff; }
|
||||
/* ── 版本条:**动作统一住顶部**(作用于正看的这一版),行里只放事实、单行排满 ── */
|
||||
.g-verslim .g-vercard-h { padding: 30px 14px 16px; gap: 4px; }
|
||||
.g-verslim .g-vercard-list { padding: 10px 12px; gap: 6px; }
|
||||
/* 动作条:一排小钮 + 右端注明作用对象(v几)—— 换版看,条上的钮跟着换语义 */
|
||||
.g-veracts { flex: none; display: flex; align-items: center; gap: 5px; padding: 9px 14px; border-bottom: 1px solid var(--sh-line); background: #f9fafc; }
|
||||
.g-veracts .g-ver-act { padding: 4px 10px; letter-spacing: .06em; }
|
||||
.g-veracts .who { margin-left: auto; font: 600 9.5px/1 var(--sh-mono); letter-spacing: .1em; color: var(--sh-muted); }
|
||||
.g-verrow { display: flex; align-items: baseline; gap: 8px; width: 100%; padding: 9px 11px; border: 1px solid var(--sh-line); border-left: 3px solid var(--sh-steel); background: #fff; font-family: var(--sh-mono); font-size: 10px; color: #3a4452; text-align: left; cursor: pointer; transition: border-color var(--t-fast); }
|
||||
.g-verrow:hover { border-color: #aeb9c6; }
|
||||
.g-verrow.on { border-color: #9fb0c0; background: #f2f5f8; }
|
||||
.g-verrow.live { border-left-color: var(--sh-brass); background: var(--sh-brass-wash); }
|
||||
.g-verrow.live.on { border-color: #cbb98d; }
|
||||
.g-verrow-h { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 6px; padding: 7px 8px; border: 0; background: transparent; font-family: var(--sh-mono); font-size: 10px; color: #3a4452; text-align: left; cursor: pointer; }
|
||||
.g-verrow-h > b { font-size: 12.5px; font-weight: 700; color: var(--sh-ink); }
|
||||
.g-verrow-h .st { font-size: 9px; letter-spacing: .1em; color: var(--sh-muted); }
|
||||
.g-verrow-h .st.live { color: var(--sh-brass); font-weight: 700; }
|
||||
.g-verrow-h .cnt { flex-basis: 100%; font-size: 9px; color: var(--sh-muted); }
|
||||
.g-verrow-a { display: flex; flex-wrap: wrap; gap: 4px; padding: 0 8px 8px; }
|
||||
.g-verrow-a .g-ver-act { flex: 1 1 auto; text-align: center; padding: 3px 6px; letter-spacing: .06em; }
|
||||
.g-verrow:focus-visible { outline: 2px solid var(--brand); outline-offset: 1px; }
|
||||
.g-verrow > b { font-size: 13px; font-weight: 700; color: var(--sh-ink); }
|
||||
.g-verrow .st { font-size: 9px; letter-spacing: .12em; color: var(--sh-muted); }
|
||||
.g-verrow .st.live { color: var(--sh-brass); font-weight: 700; }
|
||||
.g-verrow .cnt { margin-left: auto; font-size: 9.5px; color: var(--sh-muted); white-space: nowrap; }
|
||||
.g-ver-act.t-bad { color: #b0413e; border-color: #e0bcba; }
|
||||
.g-ver-act:disabled { opacity: .45; cursor: default; }
|
||||
/* 改名条:名字改的是整条流,所以落在卡底、不挂在某一行上 */
|
||||
.g-verrename { flex: none; display: flex; flex-direction: column; gap: 5px; padding: 9px 10px; border-top: 1px solid var(--sh-line); background: #f9fafc; }
|
||||
/* 改名条:紧贴动作条下方(点「改名」就地展开) */
|
||||
.g-verrename { flex: none; display: flex; flex-direction: column; gap: 5px; padding: 9px 14px; border-bottom: 1px solid var(--sh-line); background: #f9fafc; }
|
||||
.g-verrename .g-input { height: 26px; font-size: 12px; }
|
||||
.g-verrename .t { font-family: var(--sh-mono); font-size: 8.5px; line-height: 1.7; color: var(--sh-muted); }
|
||||
.g-ver { display: flex; align-items: center; gap: 9px; padding: 9px 11px; border: 1px solid var(--sh-line); border-left: 3px solid var(--sh-steel); background: #fff; cursor: pointer; font-family: var(--sh-mono); font-size: 11px; color: #3a4452; }
|
||||
|
||||
Reference in New Issue
Block a user