优化Markdown样式及实现代码行号显示_html/css_WEB-ITnose

WBOY
풀어 주다: 2016-06-24 11:27:01
원래의
2391명이 탐색했습니다.

1.写在前面

       之前使用过有道云笔记和为知笔记,后来偶然喜欢上用Markdown写文档。被Markdown的简洁与大气所折服,因此抛弃了有道云,专心使用为知笔记,这样github上的文档和笔记都能统一起来了。最后索性把园子的编辑器改为Markdown了。

       但是园子里的Markdown渲染效果和为知笔记、github上的比起来不够美观,因此决心改造园子的Markdown样式。

2.改造之路

2.1 修改CSS

  • 在github上搜索到了针对园子的CSS,并且进行了修改,CSS的修改方在此就不赘述了,右键->审查元素即可。
  • /*部分代码如下*/.cnblogs-markdown a {    background: transparent;}.cnblogs-markdown a:active,.cnblogs-markdown a:hover {    outline: 0;}
    로그인 후 복사

    2.2 支持代码行号显示

  • 尝试书写一些内容后,发现虽然支持代码高亮,但是不支持行号显示。代码怎么能没有行号呢?
  • 审查元素后发现,当使用Markdown编辑器后,代码被加上了很多html标签,园子自带的SyntaxHighlighter插件并不能完全发挥作用。因此考虑添加Javascript语句,重新渲染代码部分。
  • <script type="text/javascript">      // 博客内的链接在新窗口打开    $("#cnblogs_post_body a").each(function(){        $(this).attr("target","_blank");    })     var pre = $("pre.sourceCode"); //选中需要更改的部分    if(pre && pre.length){        pre.each(function() {            var item = $(this);            var lang = item.attr("class").split(" ")[1]; //判断高亮的语言            item.html(item.html().replace(/<[^>]+>/g,"")); //将<pre class="brush:php;toolbar:false">标签中的html标签去掉            item.removeClass();   //移除 class            item.addClass("brush: " + lang +";"); //根据语言添加笔刷            SyntaxHighlighter.all();        })    }</script>
    로그인 후 복사

    2.3 下载完整源码

  • 完整代码已经上传至 github,后期不断优化、更新,欢迎关注留言。
  • 3.使用方法

  • 如您喜欢本文样式,可以按照尝试以下方法。
  • 将style.css的代码复制到博客园后台管理的页面定制CSS代码中。
  • 将footer.js的代码复制到博客园后台管理的页脚Html代码中,添加script标签需要发送邮件至 contact@cnblogs.com,注明用途。
  • 在编辑器设置中设置默认编辑器为Markdown
  • 推荐一个所见即所得在线Markdown编辑器——作业部落
  • 원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿