fix(sidebar): 修复收起时透明对话列表可误触切换、类型切换器未隐藏的问题

This commit is contained in:
JOJO 2026-08-11 19:03:38 +08:00
parent d3ec94e7e8
commit d4301a0f56

View File

@ -117,6 +117,7 @@
.sidebar-nav-label, .sidebar-nav-label,
.conversation-search, .conversation-search,
.conversation-list, .conversation-list,
.conversation-type-switch,
.personal-label { .personal-label {
opacity: 1; opacity: 1;
transition: opacity 220ms ease; transition: opacity 220ms ease;
@ -126,11 +127,27 @@
.conversation-sidebar.collapsed .sidebar-nav-label, .conversation-sidebar.collapsed .sidebar-nav-label,
.conversation-sidebar.collapsed .conversation-search, .conversation-sidebar.collapsed .conversation-search,
.conversation-sidebar.collapsed .conversation-list, .conversation-sidebar.collapsed .conversation-list,
.conversation-sidebar.collapsed .conversation-type-switch,
.conversation-sidebar.collapsed .personal-label { .conversation-sidebar.collapsed .personal-label {
opacity: 0; opacity: 0;
transition-delay: 0ms; transition-delay: 0ms;
} }
/* 收起时隐藏的可交互容器必须同时脱离指针事件与聚焦序列
它们只是透明落在 44px 图标栏宽度内的部分仍占据布局
不禁止的话点击不可见区域仍会触发切换对话/聚焦输入 */
.conversation-sidebar.collapsed .conversation-search,
.conversation-sidebar.collapsed .conversation-list,
.conversation-sidebar.collapsed .conversation-type-switch {
pointer-events: none;
visibility: hidden;
/* visibility 延迟到淡出结束后再切换避免收起时内容瞬间消失
展开时本规则不再匹配visibility 不在基础 transition 列表中立即恢复 visible */
transition:
opacity 220ms ease,
visibility 0s linear 220ms;
}
.sidebar-nav-label { .sidebar-nav-label {
min-width: 0; min-width: 0;
padding-left: 6px; padding-left: 6px;