如何使用highlight.js使用特定字体

时间:2016-05-25 02:20:09

标签: javascript css3 highlight.js hugo

更新了示例

的正确链接

我正在使用与CSS捆绑在一起的Hugo主题,并使用Highlight.JS进行语法突出显示。我创建的网页在代码块中显示了一个简单的“快递”固定宽度字体see here for example of my site page

我想使用另一种字体,例如sans-mono或更整洁的外观,就像在Highlight.JS网页here上显示的那样

我不是非常熟悉Javascript和CSS,只是尝试使用它们。有没有更简单的方法告诉Highlight.JS使用特定的字体?假设我有可用的字体文件。

由于 ZeeKay

1 个答案:

答案 0 :(得分:4)

将此添加到您的CSS:

pre > code {
    font-family: "Sans Mono", "Consolas", "Courier", monospace;
}

这将使用该列表中用户系统上可用的第一个字体。有时字体与实名的间距不同,例如,如果"Sans Mono"不起作用,请尝试"SansMono"。确保将monospace放在最后,以便在用户没有任何列出的字体时至少选择一些合适的字体。

如果这不起作用,可能是由于选择器特异性问题,highlight.js提供的默认样式会覆盖您自己的样式。有助于避免这种情况的是将加载CSS文件的<link>放在加载highlight.js CSS文件之后。如果这不起作用,则必须使pre > code选择器更具体,例如,如果所有页面内容都包含在ID为#main pre > code的元素中,则将其更改为main

如果您不确定如何添加CSS,最简单的方法是将其放在<style></style>标记所包围的HTML模板中。虽然最好将它放在CSS文件中并用<link rel="stylesheet" href="myStyles.css">引用它。