/* 遮罩层 */ .drawer-mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(37, 37, 53, 0.6); z-index: 100; opacity: 0; transition: opacity 0.3s ease; &--visible { opacity: 1; } } /* 抽屉面板 */ .drawer-panel { position: fixed; bottom: 0; left: 0; width: 100%; height: 85vh; background-color: #FFFFFF; border-radius: 24rpx 24rpx 0 0; z-index: 101; display: flex; flex-direction: column; transform: translateY(100%); transition: transform 0.3s ease; &--visible { transform: translateY(0); } } /* 拖拽把手 */ .drawer-handle { width: 72rpx; height: 6rpx; background-color: #77849E; border-radius: 3rpx; margin: 32rpx auto 0; } /* 标题栏 */ .drawer-header { width: 100%; height: 100rpx; padding: 30rpx; box-sizing: border-box; display: flex; flex-wrap: nowrap; justify-content: space-between; border-bottom: 2rpx solid #EAEDF1; .drawer-title { color: #252535; height: 40rpx; font-size: 32rpx; font-weight: bolder; line-height: 40rpx; } /* 关闭按钮 */ .drawer-close { width: 40rpx; height: 40rpx; display: flex; align-items: center; justify-content: center; .drawer-close-icon { width: 28rpx; height: 28rpx; position: relative; &::before, &::after { content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 3rpx; background-color: #252535; border-radius: 2rpx; } &::before { transform: translate(-50%, -50%) rotate(45deg); } &::after { transform: translate(-50%, -50%) rotate(-45deg); } } } } /* 用户滚动列表 */ .drawer-user-list { flex: 1; overflow: hidden; } .scrollViewContent { width: 100%; padding: 0 30rpx; box-sizing: border-box; /* 用户行 */ .member-item { width: 100%; display: flex; flex-wrap: nowrap; align-items: center; padding: 24rpx 0; border-bottom: 2rpx solid #EAEDF1; /* 纯色占位头像 */ .member-avatar-placeholder { width: 90rpx; height: 90rpx; border-radius: 24rpx; } /* 姓名 + 副标题 */ .member-info { flex: 1; height: 78rpx; display: flex; flex-direction: column; justify-content: space-between; margin-left: 23rpx; .member-name { color: #333333; height: 32rpx; font-size: 32rpx; font-weight: 500; line-height: 32rpx; white-space: nowrap; } .member-sub { color: #77849E; height: 34rpx; font-size: 26rpx; line-height: 34rpx; white-space: nowrap; } } .member-type { height: 40rpx; flex-shrink: 0; .member-type-tag { height: 40rpx; padding: 0 14rpx; font-size: 22rpx; line-height: 40rpx; border-radius: 6rpx; } .member-type-tag--self { color: #1385FA; background-color: rgba(19, 133, 250, 0.12); } .member-type-tag--employee { color: #10B981; background-color: rgba(16, 185, 129, 0.12); } .member-type-tag--family { color: #F59E0B; background-color: rgba(245, 158, 11, 0.12); } } } }