【原创】Bootstrap带行号语法高亮的问题

CleanLi(黎涛) 发表于2017-05-31    类别: 技术(65)    标签: 原创(65) Jekyll(8) 博客技术(11)

这几天发现在Bootstrap下面使用带行号的语法高亮时,最后的结果有两点奇怪的地方,一个是最上面有一根线,另外一个就是鼠标经过时外框会反白。

最后发现,这是Bootstrap里面表格的特点造成的。在Bootstrap里面表格默认是只有横线的,而带行号的语法高亮实际上是一个一横两列的表格,那么就会在上面有一根横线。而且Bootstrap里面表格当鼠标移动经过时会反白高亮,这样就造成带行号的语法高亮也有这样的现象。如下面这个表格:

BootStrap里加上"pre"标签的表格
名称 城市
Tanmay Bangalore
Sachin Mumbai

测试发现设置border: 2px solid transparent之后,Bootstrap的表格的横线会消失,然后把反白高亮的颜色调成和表格的背景色一样,这样上面两个问题就消失了。

还有一个宽度的问题,Bootstrap的表格宽度默认设为100%,在语法高亮时会导致行号宽度过大,需要把宽度设回自动。

css/syntax.css加上下面的code可以解决上面说的问题。

.highlight .table {
  width: auto;
  border: 2px solid transparent;
  margin-bottom: 0px;
}
.highlight .table > tbody > tr:hover {
  background-color: #202020;/*调成表格默认背景色*/
}

下面这个是修改之前的语法高亮:

1
2
3
4
5
6
7
void main()
{
    int i = 0;
    for(i = 0; i < 9; i++){
        print("i = %d\n", i);
    }
}

对比修改之后:

1
2
3
4
5
6
7
void main()
{
    int i = 0;
    for(i = 0; i < 9; i++){
        print("i = %d\n", i);
    }
}

相关文章

   2017-07-10 【原创】给博客增加归档功能
   2017-06-04 【记录】解决火狐不支持网址中文传参数
   2017-05-30 【收藏】如何语法高亮Liquid代码
   2017-05-29 【收藏】一些命令收集(持续更新)
   2017-05-29 【原创】Bootstrap Tab网页的跳转定位
   2017-05-21 【原创】Github建博客
   2017-04-05 【转载】Windows上安装Jekyll
   2023-03-05 【记录】MyBB论坛安装与搬迁
   2017-08-19 【原创】博客文章生成脚本
   2017-07-15 【转载】Bootstrap之栅格系统(布局)
   2017-07-12 【收藏】Css笔记