fix(meeting): 提升 toolbar z-index 确保成员/邀请面板开启时仍可点击

MemberPanel 和 InviteDialog 的 .panel-root 使用了 position:fixed; inset:0;
z-index:200 的全屏遮罩,当面板打开时会覆盖整个视口,包括底部 toolbar。
这导致:
- 用户再次点击 toolbar 的"成员"/"邀请"按钮时,命中的是 mask 而非按钮
- mask 的 @click.self 虽然也会关闭面板(通过点击空白区域),
  但与 toolbar 按钮 toggle 的用户预期行为不一致

修复:把 MeetingToolbar .toolbar 的 z-index 从 15 提升到 210,
确保其高于 .panel-root (z:200) 而低于 .leave-mask (z:220)。

验证:Playwright 实测点击成员按钮 hitSelf=true,打开后再次点击正常关闭。

Made-with: Cursor
This commit is contained in:
bujinyuan
2026-04-22 16:39:41 +08:00
parent a311c03a21
commit cacf4ae074

View File

@@ -124,10 +124,12 @@ const emitIf = (name) => {
backdrop-filter: blur(16px); backdrop-filter: blur(16px);
border-top: 1rpx solid rgba(255, 255, 255, 0.08); border-top: 1rpx solid rgba(255, 255, 255, 0.08);
/* flex-shrink:0 保证 body 内容高度过大时不会把 toolbar 挤出视口; /* flex-shrink:0 保证 body 内容高度过大时不会把 toolbar 挤出视口;
position:relative + z-index 提升按钮点击层级,避免 ChatPanel 遮挡 */ z-index 需要高于 MemberPanel / InviteDialog 的遮罩z-index: 200
这样成员 / 邀请抽屉打开时用户仍可点击 toolbar 按钮(二次点击 toggle 关闭面板)。
同时保持低于离会确认弹窗 .leave-mask (z-index: 220)。 */
flex-shrink: 0; flex-shrink: 0;
position: relative; position: relative;
z-index: 15; z-index: 210;
} }
.btn { .btn {