如何使用

你无需进行任何操作。该插件默认处于激活状态。加载该插件后,代码中的所有标记均将被保留。

但是,您可以通过向特定代码元素添加 no-keep-markup 类来停用该插件。您还可以通过向页体的 body 添加 no-keep-markup 类来停用整个页面的该插件,然后通过向代码元素添加 keep-markup 类有选择地再次激活它。

双重高亮显示

一些插件(例如 Autoloader)需要重新高亮显示代码块。这对保留标记是一大难题,因为它会保留第一次高亮显示的标记,从而产生大量不必要的 DOM 节点,并导致主题和其他插件出现问题。

此问题可以通过向代码段或其任何祖先元素添加 drop-tokens 类来修复。如果存在 drop-tokens,保留标记将忽略 Prism 创建的所有 span.token 元素。

示例

源代码如下

<pre><code class="language-css">
@media <mark>screen</mark> {
	div {
		<mark>text</mark>-decoration: <mark><mark>under</mark>line</mark>;
		back<mark>ground: url</mark>('foo.png');
	}
}</code></pre>

将呈现如下


@media screen {
	div {
		text-decoration: underline;
		background: url('foo.png');
	}
}

它也适用于行内代码:var bar = function () { /* foo */ };