1

我想使用像StrapdownJS这样的服务来创建用 Markdown 编写的 HTML 页面。StrapdownJS 可以很好地用作 Markdown 解析器,但是它不能满足我对自定义样式的需求。在strapdownJS 中,您选择一个主题,如下所示:

<xmp theme="united">
    # Markdown here...
</xmp>

但是,在中嵌入 a <link>or<style>标记<head>不起作用,因为 StrapdownJS 在加载头部后执行所有样式。到目前为止,我能想到的唯一解决方案是使用 JQuery 之类的东西以编程方式更改所有样式,这在很大程度上违背了最初拥有样式表的目的。

有人对此有很好的解决方案吗?我理想的解决方案看起来像这样

  1. 用于<link>包含 CSS 样式表
  2. 指定一个降价文件(例如,content.md
  3. Markdown 被解析并呈现为带有样式的 HTMLstyle.css

请让我知道是否有类似的情况。同样,如果不是因为它极其有限的主题选择,StrapdownJS 将是完美的——它只有少数来自Bootswatch的主题。

4

1 回答 1

2

我发现了一种使用MarkedJS的更优雅的方法。
您所要做的就是将您的样式表与 MarkedJS 一起导入。

鉴于:

dir
 |- style.css
 |- marked.js
 |- jquery.min.js
 |- content.md
 |- index.html

HTML:

<head>
    <link href="style.css" rel="stylesheet">
    <script src="marked.js"></script>
    <script src="jquery.min.js"></script>
</head>
<body>
    <div id="content"></div>
    <script>
         $.get('content.md', function(data) {
            $('#content').html(marked(data));
        }, 'text');
    </script>
<body>

这最终正是我想要的。我可以将降价保存在一个单独的文件中,并在遵循我的自定义样式的同时动态解析它。您当然可以不使用 JQuery 来执行此操作,但我更喜欢这种方法。

于 2016-10-16T15:32:57.750 回答