CodeHighlight 设计文档

代码语法高亮:底层用 prismjs(对齐 Semi Design),给 <code> 元素加 language-<lang> class 后 Prism.highlightElement 就地高亮,仅写纯文本节点规避 XSS(不用 {@html} 拼未处理内容)。支持 lineNumber 行号、defaultTheme 内置 token 驱动配色开关。语言包按需由使用方 import "prismjs/components/prism-<lang>.js"。长代码块可滚动、可键盘聚焦,role=region + i18n aria-label。

← API 文档

使用建议

代码语法高亮:底层用 prismjs(对齐 Semi Design),给 <code> 元素加 language-<lang> class 后 Prism.highlightElement 就地高亮,仅写纯文本节点规避 XSS(不用 {@html} 拼未处理内容)。支持 lineNumber 行号、defaultTheme 内置 token 驱动配色开关。语言包按需由使用方 import "prismjs/components/prism-<lang>.js"。长代码块可滚动、可键盘聚焦,role=region + i18n aria-label。

Accessibility

  • 根 <pre> 为 role=region 命名的滚动区(aria-label 走 i18n CodeHighlight.codeBlock),tabindex=0 让长代码块可键盘滚动聚焦(WCAG 2.1.1);无交互控件、不夺焦、不锁滚。

设计变量

该组件暂无专属设计变量。