Skip to content

Commit 958d8ce

Browse files
committed
fix 代码高亮
1 parent 9657b93 commit 958d8ce

1 file changed

Lines changed: 39 additions & 4 deletions

File tree

woniunote/template/article-user.html

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,36 @@
9292
padding: 15px;
9393
border-radius: 4px;
9494
overflow-x: auto;
95+
position: relative;
96+
margin: 1em 0;
97+
border: 1px solid #e1e4e8;
98+
}
99+
100+
/* 代码块语言标签样式 */
101+
.code-language-label {
102+
position: absolute;
103+
top: 0;
104+
right: 0;
105+
padding: 0.2em 0.5em;
106+
font-size: 0.8em;
107+
background-color: #f0f0f0;
108+
border-left: 1px solid #ddd;
109+
border-bottom: 1px solid #ddd;
110+
border-bottom-left-radius: 4px;
111+
color: #666;
112+
font-family: monospace;
113+
}
114+
115+
/* 代码样式 */
116+
.article-detail .content code {
117+
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
118+
white-space: pre;
119+
word-spacing: normal;
120+
word-break: normal;
121+
word-wrap: normal;
122+
line-height: 1.5;
123+
tab-size: 4;
124+
hyphens: none;
95125
}
96126
.article-nav {
97127
margin: 20px 0;
@@ -216,7 +246,6 @@
216246
}
217247
});
218248

219-
// 处理UEditor的Markdown代码块格式
220249
function processUEditorCodeBlocks(content) {
221250
// 查找UEditor生成的代码块模式 (code0, code1, code2等)
222251
var codePattern = /<pre class="code(\d+)">(([\s\S](?!<\/pre>))*)<\/pre>/g;
@@ -226,10 +255,16 @@
226255
// 尝试检测代码语言
227256
var language = detectCodeLanguage(codeContent);
228257

258+
// 清理代码内容中的HTML实体
259+
var cleanedCode = codeContent.replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&amp;/g, '&');
260+
229261
// 创建新的代码块,添加language-*类以便highlight.js识别
230-
return '<pre><code class="language-' + language + '">' +
231-
codeContent.replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&amp;/g, '&') +
232-
'</code></pre>';
262+
// 同时添加语言标识标签
263+
return '<pre style="position: relative;">' +
264+
'<div class="code-language-label">' + language + '</div>' +
265+
'<code class="language-' + language + '">' +
266+
cleanedCode +
267+
'</code></pre>';
233268
});
234269
}
235270

0 commit comments

Comments
 (0)