博客园中实现代码高亮

本文目的:在博客园中引入sublime样式的代码高亮效果。

话不多说,先上效果图:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>helloWorld</title>
    <style>
        div{
            text-align: center;
            font-size: 20px;
        }
    </style>
</head>
<body>
    <div id="hello">hello</div>
</body>
<script>
    var oDiv=document.getElementById(‘hello‘);
    oDiv.onclick=function(){
        alert(‘hello world!‘);
    }
</script>
</html>

从上图可以看出,虽然和sublime中看到的有细微差别,不过大体还是比较像了。

接下来说说做法,实现方式其实很简单,但中间还是有一些坑:

1.引入hightlight.js的sublime皮肤

highlight.js官网

highlight.js是用在html中实现代码高亮的一个插件,这里我们只是为了获得sublime的CSS样式,因此

不用看官方文档的usage!

不用看官方文档的usage!

不用看官方文档的usage!

进入官网后点击get version:

可以在这个页面选择编程语言

这里都不重要,直接点击下方的download按钮,在下载得到的文件里面找到monokai-sublime.css

把里面的内容复制一下,放入博客园后台管理-设置-页面定制CSS代码当中

注意一定要在CSS文件的.hljs前面加上.cnblogs-markdown,不然样式会失效

至此,完成了第一小步

2.使用markdown编辑器

第1步使用的CSS样式,只有在markdown编辑器的模式下才会生效,因此想要通过这种方法实现代码高亮,只有使用markdown编辑器来编辑博客内容。

操作方法: 管理--选项--将默认编辑器选为markdown

然后在编辑代码块的时候,前后加上 ``` 就大功告成了

由于我们引入的样式和博客园的默认样式会有所冲突,因此需要调整我们放到页面定制CSS代码中的CSS,比如加一些 !important,改一些具体颜色等等。这个可以自己按F12,点到对应元素看看,是哪些元素的样式有冲突。

我个人使用的CSS样式如下:

/*

Monokai Sublime style. Derived from Monokai by noformnocontent http://nn.mit-license.org/

*/

.cnblogs-markdown .hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  background: #23241f !important;
  color:white;
  font-size:16px !important;
}

.hljs,
.hljs-tag,
.hljs-subst {
  color: #f8f8f2;
}

.hljs-strong,
.hljs-emphasis {
  color: #a8a8a2;
}

.hljs-bullet,
.hljs-quote,
.hljs-number,
.hljs-regexp,
.hljs-literal,
.hljs-link {
  color: #ae81ff;
}

.hljs-code,
.hljs-title,
.hljs-section,
.hljs-selector-class {
  color: #a6e22e;
}

.hljs-strong {
  font-weight: bold;
}

.hljs-emphasis {
  font-style: italic;
}

.hljs-keyword,
.hljs-selector-tag,
.hljs-name,
.hljs-attr {
  color: #f92672;
}
.hljs-keyword,.hljs-built_in{
  color:#66d9ef;
}

.hljs-symbol,
.hljs-attribute {
  color: #66d9ef;
}

.hljs-params,
.hljs-class .hljs-title {
  color: #f8f8f2;
}

.hljs-string,
.hljs-type,
.hljs-builtin-name,
.hljs-selector-id,
.hljs-selector-attr,
.hljs-selector-pseudo,
.hljs-addition,
.hljs-variable,
.hljs-template-variable {
  color: #e6db74;
}

.hljs-comment,
.hljs-deletion{
  color: #75715e;
}

.hljs-meta{
  color: #f92672;
}

至此,彻底大功告成。

原文地址:https://www.cnblogs.com/60late/p/9099156.html

时间: 2024-08-10 19:07:50

博客园中实现代码高亮的相关文章

在博客园中复制代码到网页中,有时候会存在异常,如下:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> *{ padding: 0; margin: 0; } .warp{ background: #ddd; } </style></

博客园的代码高亮

博客园自带的代码样式很难看,以下是如何自己设置代码的高亮. 1.点开HTML编辑. 2.找到代码位置,大致如下: 3.提炼成以下样式: <pre class='{0}'>内容</pre> 4.博客园已经默认支持 SyntaxHighlighter 插件. 只需在<pre>标签加入class样式即可,将{0}用如下样式替换,brush:java替换成实际语言brush:xxx(可自定义样式,但前面要有brush:xxx) class="brush: java;h

[博客美化] 博客园SyntaxHighlighter代码高亮

在网上搜了一圈,觉得用Windows Live Writer/Open Live Writer代码着色太繁琐了,仅仅为了实现博客代码着色功能就要下载新软件和搞一堆配置.Win10用户只能使用Open Live Writer.Web端能干的事干嘛多搞功夫.如果不愿意网页登陆账号只想通过OLW软件编辑全文并且发布的话,可以参考这个:https://www.cnblogs.com/huntdream/p/6006350.html,说得很清楚了. [ 补充:下载完SyntaxHighlighter插件需

为知笔记发布到博客园,代码高亮失效问题

博客设置 -> 页面定制CSS代码 填入以下样式表 /* Original style from softwaremaniacs.org (c) Ivan Sagalaev <[email protected]> */ .hljs { display: block; padding: 0.5em; background: #F0F0F0; } .hljs, .hljs-subst, .hljs-tag .hljs-title, .lisp .hljs-title, .clojure .h

博客园中Bootstrap4点击查看结果模板代码

博客园中Bootstrap4点击查看结果模板代码 <span class="btn btn-danger" data-toggle="collapse" data-target="#result">点击查看结果</span> <div class="collapse" id="result">请在这里书写您的代码</div> 原文地址:https://www.

新浪微博微组件添加到博客园中

弄了半天,终于搞定了.将微博放入博客园是一件多么让人兴奋的事情. 刚开始都压根不知道要怎么用,只能在新浪开发平台上各种倒腾.最后才发现原来这么简单. 1.登录新浪微博开放平台,点击常用引导栏下的微组件 2.在微博组件中,选择一个你希望用到的 3.进到微博小工具后选择 博客挂件 在这里值的说的是,我刚开始就一直在弄我的微博秀,但是代码复制到博客园后总是清除掉.后来发现,用这个只能注册申请,而我们也没有自己的网站什么,真心很麻烦,所以直接用博客组件把.方便,省事.嘿嘿... 4.选定你的博客类型 5

[cnblogs] 仿博客园插入代码的Windows Live Writer插件

一  插件相关效果图展示 插件效果图: 在Windows Live Writer中的效果如图: [1] [2] [3] 对应的插入代码在博客中的效果如下: [1] public static void Main(string[] args) { int sum = 0; for(int i = 0 ; i < 100 ; i++) { sum += i; } } [2] public static void Main(string[] args) { int sum = 0; for(int i

怎样在博客园中添加自己的导航栏

原本想在博客园中添加自己的导航栏,摸索一番后才发现,博客园没有提供添加自己导航栏的功能.要是能自己写js来添加应该也是可以的,于是申请了js权限,申请了好多次都不通过,~~o(>_<)o ~~,今天终于审核通过了,自己尝试来添加导航. 准备导航栏js 我自己写了一个简单的jquery插件来添加或者移除导航,好,不多说了,贴出代码: (function(jQuery) { var arr = [], slice = arr.slice; var methods = { init: functio

如何在博客园中外挂字体 Lebal:Research

有时候我们会遇到想要的字体但是在博客园中没有办法选择的情况,这个时候可以选择外挂字体,示例代码(插入Klavika字体并将其命名为KlavikaRegular)如下 @font-face{ /*将插入的字体命名为KlavikaRegular*/ font-family:KlavikaRegular; /*以下几行都是插入字体的链接,包含各种格式*/ src:url(https://jobs.amd.com/sites/amd/css/fonts/Klavika-RegularCond.otf);