.chat-container { position: relative; display: flex; flex-direction: column; margin: 10px 20px 0; margin-bottom: 150px; /* 或者按照实际需要调整高度 */ } .chat-container .header{ width: 90%; margin: 10px auto 0; border: 1px solid #d7d7d7; border-radius: 10px; } .form-container { max-width: 1200px; /* 或者其他适合你布局的宽度 */ margin: 0 auto; /* 这会使容器水平居中 */ padding: 0 15px; /* 添加一些左右内边距 */ } .el-form-item { margin-bottom: 15px; } .el-select { width: 100%; } .generate-button { margin-top: 10px; /* 在小屏幕上给按钮一些上边距 */ margin-right: 25px; } @media (max-width: 768px) { .selection-summary { flex-direction: column; } .generate-button { margin-left: 0; margin-top: 15px; align-self: flex-end; /* 在小屏幕上将按钮右对齐 */ } } .selection-summary { background-color: #f2f2f2; border-radius: 4px; padding: 15px; margin: 15px; display: flex; justify-content: space-between; align-items: center; border-radius:10px; } .summary-content { flex-grow: 1; } .summary-label { font-weight: bold; color: #7f7f7f; margin-right: 10px; } .summary-text { color: #606266; margin: 0; margin-top: 3px; font-size: 14px; } .title{ width: 90%; /* margin: 0 auto 15px; */ display: flex; align-items: center; } .title_info{ cursor: pointer; color: #1296db; font-size: 14px; margin-left: 10px; } /* .chat-container .header ::v-deep .el-select .el-input--medium .el-input__inner{ border: none; } .chat-container .header ::v-deep .el-select .el-input--medium .el-input__suffix .el-input__suffix-inner{ display: none; } */ .chat-container .content { display: flex; justify-content: flex-start; } .chat-container .content .left{ margin-left: 10px; width: 330px; height: 87vh; } .chat-item { border-radius: 10px; padding: 10px; border-bottom: 1px solid #e8edf2; background-color: #f5f5fa; margin-bottom: 10px; } .chat-header { display: flex; align-items: center; margin-bottom: 5px; } .avatar { width: 40px; height: 40px; border-radius: 50%; margin-right: 10px; } .user-info { flex-grow: 1; } .user-info .info_header{ display: flex; align-items: flex-end; } .username { font-weight: bold; } .timestamp { margin-left:13px; font-size: 0.8em; color: #888; } .more-options { cursor: pointer; } .chat-message { font-weight: bold; margin-top: 8px; margin-bottom: 10px; } .chat-preview { font-size: 0.9em; color: #666; } /* Adjust existing styles */ .left { width: 300px; /* Increased width to accommodate the new layout */ } .chat-history { width: 330px; height: 100%; overflow-y: auto; } .messages { width: 1180px; /* 设置消息列表宽度为屏幕宽度的 80% */ max-width: 90%; /* 限制最大宽度,避免超出视口 */ margin: 0 auto; /* 上下保持原有的 margin,左右自动调整以居中 */ overflow-y: auto; /* 如果消息太多,允许滚动 */ height: calc(100vh - 230px); /* 高度需要根据输入框和其他元素的高度调整 */ padding: 10px; /* 或你希望的内边距大小 */ margin-bottom: 120px; } /* 针对手机端的媒体查询 */ @media screen and (max-width: 768px) { .messages { width: 100%; max-width: 100%; margin: 0; margin-bottom: 120px; } } .user-message { display: flex; flex-direction: column !important; align-items: flex-end !important; } .user-message .message-content { order: 1; text-align: right; } .user-message .avatar { order: 2; margin-left: 10px; margin-right: 0; } .message-text { margin-top: 5px; } .messages li { display: flex; flex-direction: column; align-items: flex-start; /* 这将确保所有子元素对齐到容器的顶部 */ /* margin-bottom: 10px; */ } .avatar { width: 40px; /* 头像的尺寸 */ height: 40px; border-radius: 50%; /* 圆形头像 */ /*background-color: #e9e0e0; 暂时用灰色代替,你可以用图片替换 */ align-self: start; /* 这将覆盖 flex 容器的 align-items 并将头像对齐到顶部 */ margin-right: 10px; /* 按需调整以在头像和消息之间提供空间 */ } .user-avatar { background-image: url('../assets/用户.png') ; background-position: center; background-repeat: no-repeat; background-size: cover; /* background-color: #93939d; */ /* 用户头像颜色 */ } .bot-avatar { background-image: url('../assets/机器人.png'); background-position: center; background-repeat: no-repeat; background-size: cover; /* background-color: green; */ /* AI头像颜色 */ } /* 针对手机端的媒体查询 */ @media screen and (max-width: 768px) { .user-avatar, .bot-avatar { width: 30px; /* 或其他更小的尺寸 */ height: 30px; } } .message_name{ display: flex; align-items: center; padding-top: 5px; padding-bottom: 5px; } .name{ margin-left: 8px; /* margin-bottom: 5px; */ } .message-content { background-color: #f0f0f0; /* 消息背景 */ padding-left: 20px; /* 上下左右的内边距 */ padding-right: 20px; /* 上下左右的内边距 */ padding-top: 10px; /* 上下左右的内边距 */ padding-bottom: 0px; /* 上下左右的内边距 */ max-width: calc(90% - 10px); /* 计算头像和间距 */ border-radius: 7px; /* 边框圆角 */ /* margin-bottom: 10px; 和下一条消息之间的间距 */ /* 消息内容样式 */ display: flex; flex-direction: column; /* 排列文本 */ margin-top: 0; } .message-text { margin: 0; white-space: normal; /* 确保文本会换行 */ word-wrap: break-word; /* 长单词或 URL 会被断开以适应容器宽度 */ overflow: auto; } .message-text ::v-deep p { font-size: 14px !important; margin: 5px 0 10px; padding: 0; font-size: inherit; line-height: 22px; font-weight: inherit; } .message-text ::v-deep ol{ padding-bottom: 10px ; } .message-text ::v-deep .source-section h3 { margin: 20px 0 3px; color: #333; font-size: 1.1em; } .message-text ::v-deep ol li{ padding-top:3px ; } .message-text ::v-deep ol li a{ color: #1296db; } .input-container { position: absolute; /* 改为绝对定位 */ bottom: 10px; /* 距离底部的距离 */ left: 50%; transform: translateX(-50%); width: 90%; /* 设置宽度为弹窗宽度的90% */ max-width: 800px; /* 设置最大宽度 */ display: flex; justify-content: space-between; align-items: center; padding: 10px; background: white; border-radius: 10px; box-shadow: 0px 2px 5px rgba(0,0,0,0.1); } textarea { font-size: 16px; width: 100%; /* 可以根据需要调整 */ padding: 10px; border: 1px solid #ccc; border-radius: 4px; border: none; outline: none; resize: none; } .input-container textarea { width: 100%; /* 输入框占据所有可用空间 */ padding: 10px; margin-right: 10px; /* 与按钮的间隔 */ box-sizing: border-box; } .input-container button { min-width: 80px; /* 例如,按钮的最小宽度为 100px */ white-space: nowrap; /* 防止文字折行 */ padding: 10px 20px; cursor: pointer; } .sender-name { font-weight: bold; color: #333; margin-left: -5px; } .btn { font-size: 16px; color: #ffffff; border-radius: 5px; border: none; background-color: #3cbade; padding: 10px 20px; /* 添加内边距 */ width: auto; /* 让宽度自适应内容 */ } /* 针对手机端的媒体查询 */ @media screen and (max-width: 768px) { .btn { font-size: 14px; /* 稍微减小字体大小 */ padding: 8px 16px; /* 减小内边距 */ max-width: 80px; /* 限制最大宽度 */ margin: 0 auto; /* 居中显示 */ } } .content_card{ width: 98%; margin: 0 20px; } /* 应用卡片 */ .card-container { display: flex; flex-wrap: wrap; gap: 20px; } .card { width: calc(20% - 16px); background-color: #fff; height: 300px; border-radius: 8px; box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); padding: 20px; } .card-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; } .card-header h2 { margin: 0; font-size: 22px; margin-bottom: 5px; } .card-description { color: #000; font-size: 18px; font-weight: 600; margin-bottom: 15px; } .file-types { margin-top: 10px; display: flex; gap: 15px; margin-bottom: 15px; } .file-type { display: flex; align-items: center; gap: 5px; } .file-type i { font-size: 20px; } .card_info{ width: 100%; height: 60px; font-size: 14px; overflow:hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; display: -webkit-box; -webkit-box-orient: vertical; } .card-footer { margin-top: 20px; font-size: 12px; display: flex; justify-content: space-between; align-items: center; } .footer_left{ } .footer_right{ color: #1296db; } ::v-deep .el-collapse{ border: none; } ::v-deep .el-collapse-item__wrap{ border-bottom: none; } .header_btn{ display: flex; justify-content: flex-end; } ::v-deep .el-form--inline .el-form-item{ display: block; } .truncate-text { max-width: calc(100% - 30px); /* 调整这个值以适应下拉菜单的宽度 */ white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /* Add this to your existing styles */ .knowledge-base-name { display: inline-block; max-width: 100px; /* Adjust this value as needed */ white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-right: 5px; /* Add some spacing between spans */ }