【问题标题】:Why do I get a double frame around markdown code block on Jekyll site?为什么我在 Jekyll 网站上的 markdown 代码块周围出现双框?
【发布时间】:2019-03-22 21:40:28
【问题描述】:

我正在使用 Markdown 为 Jekyll 博客创建帖子,该博客使用 Jekyll-Now 主题,托管在 GitHub Pages 上。我正在使用围栏代码块(带有三个反引号)突出显示代码,并且在发布时,代码块以双框显示。我只想要一个框架。我使用stackedit.io 来测试markdown,它看起来不错——只有一帧。在这里看起来也是正确的(见下文)。

博文here。我显然是新手,只有一篇文章。

有什么想法吗?谢谢。

降价

原始降价也在 GitHub here

```python
center_lower_48 = [39.833333, -98.583333]
map = folium.Map(location = center_lower_48,
                 zoom_start = 4,
                 control_scale = True,
                 tiles = 'Stamen Terrain')
```

Markdown 应该显示为:

center_lower_48 = [39.833333, -98.583333]
map = folium.Map(location = center_lower_48,
                 zoom_start = 4,
                 control_scale = True,
                 tiles = 'Stamen Terrain')

看起来像:

【问题讨论】:

    标签: markdown jekyll kramdown


    【解决方案1】:

    对于仍然遇到此问题(如我)并正在寻找实际错误修复的任何人,因为 OP 从未真正说明他们如何修复它:

    _sass/_highlights.scss 文件中,您只需将.highlight 替换为pre.highlight。如果未指定,某些样式似乎可以应用两次。我还在pre.highlight{...} 中有一个条目,我将其从overflow: scroll; 更改为overflow: auto;,以便在不需要时隐藏滚动条。

    之前:

    .highlight{
        ...
        overflow: scroll;
        ...
    } 
    

    之后:

    pre.highlight{
        ...
        overflow: auto;
        ...
    } 
    

    看来最初的问题是人们仍然遇到的一些 Jekyll 模板。我从this SO answer 找到了答案,如果有人想了解更多信息,请参考this thread

    【讨论】:

      【解决方案2】:

      Kramdown 支持常规(缩进)和围栏代码块,尽管 its syntax 与您使用的三反 GitHub 样式不同:

      kramdown 还支持代码块的替代语法,它不使用缩进块而是分隔行。起始行需要以三个或更多波浪号字符 (~) 开头,而结束行需要至少有起始行的波浪号。

      您可以使用 IAL 告诉 kramdown 代码块的语言:

      ~~~
      def what?
        42
      end
      ~~~
      {: .language-ruby}
      

      在你的情况下,像

      ~~~
      center_lower_48 = [39.833333, -98.583333]
      map = folium.Map(location = center_lower_48,
                       zoom_start = 4,
                       control_scale = True,
                       tiles = 'Stamen Terrain')
      ~~~
      {: .language-python}
      

      应该这样做。请注意,两个都不是standard Markdown

      (您当前看到的框架可能是 kramdown 嵌套多个代码块的结果。)

      【讨论】:

      • 感谢您的回复。我试过这个,不幸的是它不起作用。我认为这可能是缩进,所以我只尝试了 3 x 波浪线,然后尝试了一条没有缩进的线,然后是 3 x 波浪线,但我仍然得到了双帧。请参阅“测试代码块”。这里:goodmorningdata.github.io/NPS-Clickable-Map-Parks
      • 你确定你是using kramdown
      • 是的,它是 Kramdown,但是 Jekyll 模板中的 scss 文件中存在导致双帧的错误。现在修好了。非常感谢您的回复。
      【解决方案3】:

      我发现这是 Jekyll 模板的一个错误。感谢您的帮助。

      【讨论】:

      • 这不是答案。
      猜你喜欢
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多