优化消息间距:使用 pre-line 并重置块元素边距,平衡紧凑度与可读性
parent
9c208cd8e1
commit
fe3eb1c697
|
|
@ -8,11 +8,5 @@ export function formatMessageContent(content: string): string {
|
||||||
|
|
||||||
return content
|
return content
|
||||||
// 将 3 个及以上的换行替换为 2 个
|
// 将 3 个及以上的换行替换为 2 个
|
||||||
.replace(/\n{3,}/g, '\n\n')
|
.replace(/\n{3,}/g, '\n\n');
|
||||||
// 针对 Markdown 块元素,将双换行缩小为单换行
|
|
||||||
// 匹配 \n\n 后面跟着 #, -, *, >, --- 等
|
|
||||||
.replace(/\n\n(?=[#\-*>]|---)/g, '\n')
|
|
||||||
// 匹配 #, -, *, >, --- 后面跟着 \n\n
|
|
||||||
// 由于 JavaScript 不支持所有环境下的 lookbehind,我们先处理上面的
|
|
||||||
.replace(/([#\-*>]|---)\n\n/g, '$1\n');
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -762,7 +762,7 @@ body {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
border-radius: 14px;
|
border-radius: 14px;
|
||||||
white-space: pre-wrap;
|
white-space: pre-line;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
font-size: 14.5px;
|
font-size: 14.5px;
|
||||||
|
|
@ -785,61 +785,47 @@ body {
|
||||||
border: 0;
|
border: 0;
|
||||||
border-bottom-left-radius: 5px;
|
border-bottom-left-radius: 5px;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
white-space: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bubble.assistant p {
|
|
||||||
margin: 0 0 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bubble.assistant p:last-child {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bubble.assistant p,
|
||||||
.bubble.assistant h1,
|
.bubble.assistant h1,
|
||||||
.bubble.assistant h2,
|
.bubble.assistant h2,
|
||||||
.bubble.assistant h3,
|
.bubble.assistant h3,
|
||||||
.bubble.assistant h4,
|
.bubble.assistant h4,
|
||||||
.bubble.assistant h5,
|
.bubble.assistant h5,
|
||||||
.bubble.assistant h6 {
|
.bubble.assistant h6,
|
||||||
margin: 0.2em 0 0.1em;
|
|
||||||
line-height: 1.3;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bubble.assistant ol,
|
.bubble.assistant ol,
|
||||||
.bubble.assistant ul {
|
.bubble.assistant ul {
|
||||||
margin: 0.15em 0;
|
margin: 0;
|
||||||
padding-left: 1.25em;
|
padding-left: 1.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bubble.assistant li {
|
.bubble.assistant li {
|
||||||
margin: 0.05em 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bubble.assistant hr {
|
.bubble.assistant hr {
|
||||||
margin: 0.4em 0;
|
margin: 12px 0;
|
||||||
}
|
border: 0;
|
||||||
|
border-top: 1px solid rgba(0, 0, 0, 0.1);
|
||||||
.bubble.assistant li > p {
|
|
||||||
margin: 0.15em 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.bubble.assistant blockquote {
|
.bubble.assistant blockquote {
|
||||||
margin: 0.2em 0;
|
margin: 8px 0;
|
||||||
padding: 0.2em 0.6em;
|
padding: 4px 12px;
|
||||||
border-left: 3px solid var(--color-border);
|
border-left: 3px solid var(--color-border);
|
||||||
background: rgba(15, 23, 42, 0.03);
|
background: rgba(15, 23, 42, 0.03);
|
||||||
border-radius: 8px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bubble.assistant blockquote p {
|
.bubble.assistant blockquote p {
|
||||||
margin: 0.2em 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.bubble.assistant table {
|
.bubble.assistant table {
|
||||||
border-collapse: collapse;
|
border-collapse: collapse;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin: 0.35em 0;
|
margin: 12px 0;
|
||||||
font-size: 13.5px;
|
font-size: 13.5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue