UNPKG

z-react-ui

Version:

z-react-ui,是一款基于 Dumi,由 React + TypeScript 开发的组件库 🎉。

202 lines (186 loc) 4.55 kB
@import '../../style/themes/default.less'; @chat-list: ~'@{st-prefix}-chat-list'; @chat-item: ~'@{st-prefix}-chat-item'; // 聊天内容样式 .@{chat-list} { height: 400px; overflow-y: auto; //自动移滚动条样式 &::-webkit-scrollbar { width: 8px; height: 8px; } &::-webkit-scrollbar-thumb { border-radius: 1em; background-color: rgba(50, 50, 50, 0.3); } &::-webkit-scrollbar-track { border-radius: 1em; background-color: rgba(50, 50, 50, 0.1); } /*透明滚动条*/ &-transparent-scroll-bar::-webkit-scrollbar { color: transparent; } &-transparent-scroll-bar::-webkit-scrollbar-thumb { background: transparent; } &-transparent-scroll-bar::-webkit-scrollbar-track { background: transparent; } .@{chat-list}-row-list { width: 100%; min-height: 50px; // 时间样式 .@{chat-list}-sender-time-list { width: 100%; height: 30px; display: flex; justify-content: center; align-items: center; span { padding: 3px 15px; border-radius: 10px; font-family: PingFangSC-Regular; font-size: 12px; color: #cacbd6; line-height: 12px; display: inline-block; background: #fafafa; } } // 消息样式 .@{chat-item} { display: flex; justify-content: left; align-items: flex-start; padding: 5px 0; .@{chat-item}-avatar { width: 40px; height: 40px; overflow: hidden; border-radius: 50%; margin-right: 15px; margin-left: 0; img { width: 100%; } } .@{chat-item}-contentbox { flex: 1; word-break: break-all; .@{chat-item}-userName { font-size: 12px; height: 20px; // color: @table-header-color; color: #9fa0ad; } .@{chat-item}-content { max-width: 60%; padding: 10px; position: relative; // color: @label-color; color: #44475f; font-size: 12px; // box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 12%), // 0 6px 16px 0 rgba(0, 0, 0, 8%), 0 9px 28px 8px rgba(0, 0, 0, 5%); border: 1px solid rgba(0, 0, 0, 3%); &::before { content: ''; display: block; position: absolute; width: 0; height: 0; border: 6px solid transparent; } } img { max-width: 100%; } } &-left { .@{chat-item}-contentbox { .@{chat-item}-content { float: left; background: #f8f8fa; border-radius: 10px; &::before { left: -3px; top: 6px; transform: rotate(-45deg); // border-top-color: #f8f8fa; border-top-color: #f8f8fa; border-left-color: #f8f8fa; } } } } &-right { .@{chat-item}-avatar { margin-right: 0; margin-left: 15px; } .@{chat-item}-userName { text-align: right; } .@{chat-item}-contentbox { .@{chat-item}-content { border-radius: 10px; float: right; background: #eff2ff; &::before { right: -3px; top: 6px; transform: rotate(45deg); border-top-color: #eff2ff; border-right-color: #eff2ff; } } } } &-center { margin: 50px 0 40px; .@{chat-item}-contentbox { text-align: center; .@{chat-item}-content { padding: 3px 15px; border-radius: 10px; font-family: PingFangSC-Regular; font-size: 12px; color: #cacbd6; line-height: 12px; display: inline-block; background: #fafafa; } } } } } } .@{chat-list}-loading-msg-panel { width: 100%; height: 24px; display: flex; align-items: center; justify-content: center; color: #cacbd6; img { height: 100%; user-select: none; animation: loading-msg 1s linear; // 动画无限循环 animation-iteration-count: infinite; } } // 加载消息动画 @keyframes loading-msg { 0% { transform: rotate(0deg); } 50% { transform: rotate(180deg); } 100% { transform: rotate(360deg); } }