@mixin meetingContent () { .meetingContentUser { position: absolute; left: 20px; bottom: 16px; display: flex; align-items: center; z-index: 2; .meetingContentUserName { display: flex; align-items: center; background-color: #0000009E; border-radius: 6px; height: 24px; padding: 0 4px; box-sizing: border-box; >div { border-radius: 6px; padding: 4px; display: flex; justify-content: center; align-items: center; margin-right: 6px; >img { width: 12px; } } >img { width: 18px; } >label { height: 18px; width: 18px; position: relative; >img { width: 100%; height: 100%; margin-right: 4px; } >div { position: absolute; left: 0; bottom: 0; height: 0%; width: 100%; overflow: hidden; background-repeat: no-repeat; background-position: bottom center; background-size: cover; } } >span { font-size: 13px; color: #EEEEEE; flex-grow: 1; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } } } .meetingContentError { position: absolute; justify-content: center; display: flex; align-items: center; left: calc(50% + 2px); top: calc(50% + 2px); transform: translate(-50%, -50%); width: calc(100% - 18px); height: calc(100% - 18px); z-index: 1; background-color: black; cursor: pointer; >div { transform: scale(2); } } } .meeting { width: 100%; height: 100%; background-color: #1F2022; display: flex; flex-direction: column; .meetingHeader { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #2C2C2C; padding: 4px 0 4px 52px; box-sizing: border-box; flex-shrink: 0; >div:nth-child(1) { display: flex; align-items: center; >div:nth-child(1) { margin-right: 20px; display: flex; align-items: center; cursor: pointer; >span { color: #1677ff; font-size: 16px; margin-left: 4px; } } >div:nth-child(2) { font-size: 16px; color: #EEEEEE; } } >div:nth-child(2) { color: #EEEEEE; font-size: 16px; } >div:nth-child(3) { display: flex; align-items: center; .meetingGrayButton { cursor: pointer; background-color: #31353A; width: 140px; height: 36px; line-height: 36px; text-align: center; border-radius: 5px; margin-right: 20px; display: flex; align-items: center; justify-content: center; >span { font-size: 16px; color: #EEEEEE; } >img { width: 16px; margin-right: 10px; } &:hover { background-color: lighten(#31353A, 4%); } &:active { background-color: darken(#31353A, 4%); } } >div:nth-child(2) { margin: -10px 0 0; } } } .meetingContent { flex-grow: 1; display: flex; flex-direction: column; .meetingContentBody { flex-grow: 1; height: 0; display: flex; align-items: flex-start; .meetingContentBodyLeft { width: 0px; flex-grow: 1; height: 100%; box-sizing: border-box; position: relative; overflow: hidden; .standardModeIcon { position: absolute; left: 50%; transform: translate(-50%, 0%); cursor: pointer; z-index: 3; svg { fill: #fff; } &:hover { svg { fill: #A0A0A0 !important; } } &:active { svg { fill: #3A4E99 !important; } } } .speakerModeIcon { position: absolute; top: 50%; transform: translate(0, -50%); cursor: pointer; z-index: 3; svg { fill: #fff; } &:hover { svg { fill: #A0A0A0 !important; } } &:active { svg { fill: #3A4E99 !important; } } } // 自由者模式 .meetingContentBodyLeftFreedomMode { width: 100%; height: 100%; display: flex; flex-wrap: wrap; overflow-y: auto; } // 标准模式 .meetingContentBodyLeftStandardMode { display: flex; overflow-x: auto; } // 演讲者模式 .meetingContentBodyLeftSpeakerMode { width: 18%; overflow-y: auto; height: 100%; .meetingContentSwiperCard { width: 100%; } } // 单画面模式 .meetingContentBodyLeftSingleScreenMode { width: 100%; height: 100%; display: flex; flex-wrap: wrap; overflow-y: auto; .meetingContentSwiperCard { width: 100% !important; height: 100% !important; } } // 二分屏模式 .meetingContentBodyLeftDualScreenMode { width: 100%; height: 100%; display: flex; flex-wrap: wrap; overflow-y: auto; .meetingContentSwiperCard { width: 50% !important; height: 100% !important; } } // 四分屏模式 .meetingContentBodyLeftFourScreenMode { width: 100%; height: 100%; display: flex; flex-wrap: wrap; overflow-y: auto; .meetingContentSwiperCard { width: 50% !important; height: 50% !important; } } // 标准模式视频 .meetingContentSwiperCardStandardMode { position: absolute !important; bottom: 0; left: 0; height: calc(100% - 170px) !important; width: 100% !important; z-index: 2; } // 标准模式视频全部 .meetingContentSwiperCardStandardModeFullScreen { height: 100% !important; } // 演讲者模式视频 .meetingContentSwiperCardSpeakerMode { position: absolute !important; right: 0; bottom: 0; height: 100% !important; width: calc(100% - 18%) !important; z-index: 2; } // 标准模式视频全部 .meetingContentSwiperCardSpeakerModeFullScreen { width: 100% !important; } .meetingContentSwiperCard { height: 160px; width: calc(100% / 6); border-radius: 10px; overflow: hidden; position: relative; flex-shrink: 0; padding: 10px; box-sizing: border-box; .boxShadow { box-shadow: 0px 0px 13px 0px #7B96FF !important; border: 2px solid #7B96FF !important; } .active { border: 2px solid #0fa01b !important; } .meetingContentSwiperCardVdeio { box-shadow: 0px 0px 13px 0px transparent; border: 2px solid transparent; width: 100%; height: 100%; cursor: pointer; background: black; position: relative; .meetingContentSwiperCardVdeioLoading { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) scale(2); } } .meetingContentSwiperCardFullScreenIcon { position: absolute; z-index: 3; right: 20px; top: 20px; color: white; cursor: pointer; font-size: 20px; } } .meetingContentBodyLeftBlock { position: absolute; background-color: #1F2022; z-index: 2; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; top: 0; left: 0 } @include meetingContent(); .meetingContentOperation { position: absolute; right: 20px; bottom: 16px; z-index: 2; cursor: pointer; display: flex; justify-content: center; align-items: center; background-color: rgba(0, 0, 0, 0.5); box-sizing: border-box; padding: 0px 5px; } .meetingContentSwiperCardShare { position: absolute; left: 50%; top: 6%; z-index: 2; transform: translate(-50%, 0%); background-color: rgba(0, 0, 0, 0.5); color: white; font-size: 12px; padding: 4px 10px; white-space: nowrap; } } .meetingContentBodyRight { flex-shrink: 0; height: 100%; .meetingUserList { width: 300px; height: 100%; padding: 10px 0 20px; box-sizing: border-box; background-color: #16191E; display: flex; flex-direction: column; .meetingUserListTitle { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; padding: 0 20px; box-sizing: border-box; >span { color: #EEEEEE; font-size: 18px; } >img { cursor: pointer; } } .meetingUserListContent { flex-grow: 1; height: 0px; overflow-y: auto; margin: 20px 0; >div { display: flex; align-items: center; justify-content: space-between; position: relative; padding: 10px 20px; box-sizing: border-box; >div:nth-child(1) { display: flex; align-items: center; >span { font-size: 14px; color: #F3F3F5; margin-left: 4px; } >div { flex-shrink: 0; } } >div:nth-child(2) { display: flex; align-items: center; >div { height: 30px; width: 30px; cursor: pointer; display: flex; justify-content: center; align-items: center; >img { width: 20px; } &:hover { background-color: rgba(0, 0, 0, 0.5); } } } &:hover { background-color: rgb(52, 52, 52); } } } .meetingUserListFooter { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; box-sizing: border-box; >div { font-size: 14px; cursor: pointer; background-color: #31353A; color: #EEEEEE; width: 104px; height: 30px; line-height: 30px; text-align: center; border-radius: 5px; &:hover { background-color: lighten(#31353A, 4%); } &:active { background-color: darken(#31353A, 4%); } } } } .meetingUserChat { width: 300px; height: 100%; background-color: #16191E; display: flex; flex-direction: column; .meetingUserChatTitle { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; padding: 10px 20px; box-sizing: border-box; border-bottom: 1px solid #23272E; >span { color: #EEEEEE; font-size: 18px; } >img { cursor: pointer; } } .meetingUserChatContent { flex-grow: 1; height: 0px; overflow-y: auto; padding: 20px; box-sizing: border-box; .meetingUserChatContentLeft { display: flex; flex-direction: column; align-items: flex-start; >div:nth-child(1) { display: flex; align-items: center; >span { font-size: 14px; color: #F3F3F5; margin-left: 4px; } >div {} } >div:nth-child(2) { background-color: #5575F2; color: #F3F3F5; max-width: 266px; padding: 10px; box-sizing: border-box; border-radius: 0 25px 25px 25px; margin: 10px 0 10px 40px; font-size: 14px; word-break: break-all; } } .meetingUserChatContentRight { display: flex; flex-direction: column; align-items: flex-end; >div:nth-child(1) { display: flex; align-items: center; flex-direction: row-reverse; >span { font-size: 14px; color: #F3F3F5; } >div { margin-left: 4px; } } >div:nth-child(2) { background-color: #464E6B; color: #F3F3F5; max-width: 266px; padding: 10px; box-sizing: border-box; border-radius: 25px 0 25px 25px; margin: 10px 40px 10px 0; font-size: 14px; word-break: break-all; } } } .meetingUserChatButton { display: flex; flex-shrink: 0; flex-wrap: wrap; padding: 10px 20px; box-sizing: border-box; >button { margin: 4px 4px 0; } } .meetingUserChatInput { flex-shrink: 0; padding: 10px 20px; box-sizing: border-box; height: 160px; display: flex; flex-direction: column; align-items: flex-end; border-top: 1px solid #23272E; } } .meetingUserVideoList { padding: 10px 10px 10px; box-sizing: border-box; height: 100%; background-color: #16191E; display: flex; flex-direction: column; .meetingUserVideoListTitle { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; >span { color: #EEEEEE; font-size: 18px; } >img { cursor: pointer; } } .meetingUserVideoListContent { flex-grow: 1; height: 0px; overflow-y: auto; box-sizing: border-box; } } } } .meetingContentFooter { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; background-color: #07090B; padding: 4px 50px; box-sizing: border-box; >div { display: flex; align-items: center; >div { padding: 6px 0; border-radius: 6px; display: flex; flex-direction: column; align-items: center; margin-right: 30px; cursor: pointer; position: relative; &:last-child { margin: 0; } >img { height: 50px; } >span { color: #EEEEEE; font-size: 14px; width: 70px; text-align: center; } >div { position: absolute; color: white; font-size: 14px; width: 26px; height: 26px; text-align: center; line-height: 26px; right: -10px; } >label { height: 50px; height: 50px; cursor: pointer; position: relative; >img { width: 100%; height: 100%; margin-right: 4px; } >div { position: absolute; left: 0; bottom: 0; height: 0%; width: 100%; overflow: hidden; background-repeat: no-repeat; background-position: bottom center; background-size: cover; } } &:hover { background-color: #161A29; } &:active { background-color: darken(#161A29, 10%) !important; } } } } } } :global { .meetingContentFooterPopover { >div { width: 140px; height: 30px; line-height: 30px; border-radius: 5px; color: #EEEEEE; text-align: center; margin-bottom: 8px; cursor: pointer; &:last-child { margin: 0; } } .meetingContentFooterPopoverDel { background-color: #FF5219; &:hover { background-color: lighten(#FF5219, 4%); } &:active { background-color: darken(#FF5219, 4%); } } .meetingContentFooterPopoverDefault { background-color: #31353A; &:hover { background-color: lighten(#31353A, 4%); } &:active { background-color: darken(#31353A, 4%); } } .meetingContentFooterPopoverCancel { background-color: #101418; &:hover { background-color: lighten(#101418, 4%); } &:active { background-color: darken(#101418, 4%); } } } .modePopover { >div { width: 140px; height: 30px; line-height: 30px; border-radius: 5px; margin-bottom: 8px; cursor: pointer; display: flex; align-items: center; justify-content: center; >span { color: #EEEEEE; } >img { height: 16px; margin-right: 10px; } &:last-child { margin: 0; } } >div { background-color: #101418; &:hover { background-color: lighten(#101418, 4%); } &:active { background-color: darken(#101418, 4%); } } } } .meetingContentSwiperCardPopover { display: flex; flex-direction: column; >button { margin-bottom: 4px; &:last-child { margin-bottom: 0; } } } // 共享屏幕 .sharedScreenModal { display: flex; flex-direction: column; >div:nth-child(1) { display: flex; flex-wrap: wrap; align-content: flex-start; padding: 50px 0 0; max-height: 40vh; overflow-y: auto; >div { display: flex; flex-direction: column; align-items: center; width: calc(100% / 4); box-sizing: border-box; margin-bottom: 20px; cursor: pointer; position: relative; >span { color: #EEEEEE; font-size: 14px; margin-top: 4px; width: 144px; text-align: center; } >div { width: 144px; height: 94px; box-sizing: border-box; border: 5px solid transparent; >img { width: 100%; height: 100%; } } >img { position: absolute; top: -20px; left: 0; width: 40px; } &:hover { >div { border: 5px solid yellow; box-sizing: border-box; } } } .active { >div { border: 5px solid yellow; box-sizing: border-box; } } } >div:nth-child(2) { flex-shrink: 0; display: flex; align-items: center; justify-content: space-between; margin-top: 20px; } }