搜索

首页  >  问答  >  正文

HTML中<code>标签的语法高亮颜色设置

<p>在像下面这样的代码片段中...</p> <pre class="brush:cs;toolbar:false;"> class Foo { internal Foo() { for (int i = 0; i < 42; ++i); } } </pre> <p>...当它们在我的浏览器中显示时,各种关键字等都会被着色。</p> <p>当我点击“查看源代码”时,我没有看到任何特殊的HTML代码来实现这种着色。</p> <p>那么这种特定语法的颜色高亮是如何实现的呢?例如,它是内置于浏览器中,还是通过特定网站的JavaScript编辑浏览器中的DOM来实现的?</p> <p>我发现这是一个难以通过谷歌搜索得到答案的问题。</p>
P粉032649413P粉032649413491 天前679

全部回复(2)我来回复

  • P粉191610580

    P粉1916105802023-08-23 14:40:07

    在meta.SE上有一个非常好的FAQ 什么是语法高亮,它是如何工作的?

    它非常详尽。为了方便起见,我会引用与您的问题最相关的部分:


    它是如何工作的?

    在创建或编辑帖子时,根据问题的标签,语法高亮会在您停止输入5秒后分配给预览。

    Stack Exchange没有自己的语法高亮引擎。它使用highlight.js,并且可能不一定使用该库的最新版本。因此,任何关于语法高亮的错误和功能请求都无法由Stack Exchange处理。

    为什么我的代码没有正确高亮显示?

    [ 继续阅读原始帖子... ]

    回复
    0
  • P粉604848588

    P粉6048485882023-08-23 10:59:24

    Stack Overflow使用Google的prettify JS库进行语法高亮。它在HTML由服务器传送到客户端后执行。这就是为什么你在原始HTML源代码中看不到它。如果你安装了像FireBug这样的浏览器插件,你就可以在prettify完成后检查DOM。

    更新2020-09-14:Stack Overflow从Google的prettify切换到highlight.js

    回复
    0
  • 取消回复