Javascript 未使用Prism JS显示标记
我正在尝试使用PrismJS作为我的blogspot博客的语法高亮显示。在遇到语法Highlighter的问题后,我想我应该试试prism 我的代码如下所示:Javascript 未使用Prism JS显示标记,javascript,html,css,Javascript,Html,Css,我正在尝试使用PrismJS作为我的blogspot博客的语法高亮显示。在遇到语法Highlighter的问题后,我想我应该试试prism 我的代码如下所示: <pre class="line-numbers language-markup"> <code> <b:if cond='data:blog.url == "http://domain.com/p/about.html"'> <style type
<pre class="line-numbers language-markup">
<code>
<b:if cond='data:blog.url == "http://domain.com/p/about.html"'>
<style type="text/css">
font-size: 22px;
</style>
</b:if>
</code>
</pre>
<script type="text/plain" class="language-markup">
<p>Example</p>
</script>
字体大小:22px;
我在
标记之前包含了prismjs文件
CSS工作正常,我的Chrome控制台中没有错误,但是脚本没有显示任何标记
我有一个JSFIDLE,在我的站点上有完全相同的代码,而且它也没有显示行号,即使我的站点有
网站示例:
你知道这为什么不起作用吗?这个类=“language-*”
需要放在元素上,而不是元素上。一开始我也犯了这个错误
<pre>
<code class="language-markup">
<script type="prism-html-markup">
<h1 class="foo">h1. Heading 1</h1>
<h2>h2. Heading 2</h2>
<h3>h3. Heading 3</h3>
<h4>h4. Heading 4</h4>
<h5>h5. Heading 5</h5>
<h6>h6. Heading 6</h6>
</script>
</code>
</pre>
更新了正确的信息
看来JS小提琴不喜欢棱镜。在CodePen和我的机器上本地工作正常:。Prism使用正则表达式标识要高亮显示的部分。确保正确转义代码。开始标记(代码符号)应该写为代码,结束标记(代码符号)应该写为代码(代码符号),因为
对这个插件做了一些尝试,发现用>和<替换是一种痛苦。如果你用一个脚本标签包装你的html,所有的东西都会突出显示。因为非类型化脚本标记中的html在VisualStudio中不起作用,所以我给了它一种类型的prism html标记
h1。标题1
h2。标题2
h3。标题3
h4。标题4
h5。标题5
h6。标题6
希望这有帮助 在“代码”之间添加额外的“xmp”标记,并将html代码放入“xmp”标记中。
为我工作
试验
您可以使用
这就是它的工作原理:
范例
要忽略第一次和最后一次返回,我建议使用。在示例中,它位于
标记中。不管怎样,我试过了,现在屏幕上的行号都没有显示出来。你说得对,我看错了文档。看来JS小提琴不喜欢棱镜。在CodePen和我的机器上本地工作正常:。Prism使用正则表达式标识要高亮显示的部分。确保正确转义代码。开始标记(代码符号)应写为代码,结束标记(代码符号)应写为代码。无论将语言类放在何处,它都是继承的。另外,您不需要逃避
,只要谢谢。我在显示未替换的标记时遇到问题。官方网站上的文档并没有提到将脚本放入pre和代码中。他们在这里使用它时没有pre和代码,但我不知道他们是如何让它工作的:这应该是公认的答案。将
替换为&rt
非常乏味,而且可能容易出错。我不建议使用这种技术,因为它自HTML3.2以来就被弃用了。看见