diff --git a/bricks/css/bricks.css b/bricks/css/bricks.css index c079d8f..a0e9c64 100755 --- a/bricks/css/bricks.css +++ b/bricks/css/bricks.css @@ -662,12 +662,31 @@ hr { --ink-1: #1e293b; /* 主正文 */ --ink-2: #334155; /* 次正文 */ --ink-3: #475569; /* 弱化说明 */ + --bg-side: #f8fafc; /* 侧栏容器底(菜单项未覆盖区) */ + --bg-page: #f1f5f9; /* 页面/内容区底 */ + --surface-card: #ffffff; /* 卡片表面 */ } html[data-theme="dark"] { --ink-0: #f1f5f9; --ink-1: #e2e8f0; --ink-2: #cbd5e1; --ink-3: #94a3b8; + --bg-side: #0F172A; + --bg-page: #0F172A; + --surface-card: #1E293B; +} + +/* 菜单分组展开指示箭头(2026-09-18 用户要求分风格):颜色跟 --ink-3 双主题, + 展开态旋转 90°。menu.js 给分组项加 .menu-group / 展开时加 .menu-group-open */ +.menu-group::after { + content: "▸"; + color: var(--ink-3); + margin-left: 6px; + transition: transform .15s ease; + display: inline-block; +} +.menu-group.menu-group-open::after { + transform: rotate(90deg); } [data-theme="dark"] body, diff --git a/bricks/menu.js b/bricks/menu.js index 37e0c73..a0d7088 100644 --- a/bricks/menu.js +++ b/bricks/menu.js @@ -135,6 +135,9 @@ bricks.Menu = class extends bricks.VScrollPanel { itw.user_data = item; itw.add_widget(subw); itw.add_widget(w1); + // 分组展开指示(2026-09-18 用户要求分风格):分组行加 .menu-group, + // 展开/收起时同步 .menu-group-open(CSS ::after 箭头跟主题色旋转) + subw.dom_element.classList.add('menu-group'); if (cnt < 4){ this.create_children(itw, cnt+1); } @@ -197,6 +200,10 @@ bricks.Menu = class extends bricks.VScrollPanel { } items_toggle_hide(w, event){ w.toggle_hide(); + // 同步分组箭头展开态(.menu-group-open 由 CSS 旋转 ::after 箭头) + var row = event && event.target && event.target.closest + ? event.target.closest('.menu-group') : null; + if (row) row.classList.toggle('menu-group-open', w.dom_element.style.display !== 'none'); event.stopPropagation(); } create_menuitem(item){