小编典典

是否有HTML / CSS方式显示HTML标签而不进行解析?

css

有什么方法可以显示HTML标签而不进行解析?像这样的标签XMP以前工作得很好,但是现在被它取代的PRE并不是那么酷。看一下这个例子:

//This used to NOT PARSE HTML even if you used standard < and >.
<XMP>
<a hred="http://example.com">Link</a>
</XMP>

//New PRE tag requires &lt; and &gt; as replacement for < and >.
<PRE>
&#60;a href="http://example.com"&#62;Link&#60;/A&#62;
</PRE>

我正在寻找的等效于旧的XMP标签。新的PRE标签将解析代码。


阅读 694

收藏
2020-05-16

共1个答案

小编典典

您可以将script元素及其type设置用于表示纯文本,并将其display属性设置为block。这仅影响解析行为:除了元素本身的结束标记之外,无法识别任何标记(标记,实体或字符引用)</script>。(所以它不是
一样xmp,这里的认可标签</xmp>。)你可以单独做空白处理类似的xmppre和/或设置字体等宽为默认的那些元素。

例:

<style>
    script {
        display: block;
    }
</style>

然后在文档正文中:

<script type="text/plain">
    <i>&eacute;</i>
</script>

在IE,Chrome,Firefox,Opera的最新版本上进行了测试。在IE 9的IE 8和IE 7仿真中不起作用,但这可能是仿真中的错误。

但是,我不明白为什么您会用它代替xmp,但它并没有停止工作。它不在规格中,但是如果您担心这一点,则应该一直担心。可以避免地在HTML
2.0中提及(有史以来的第一个HTML规范),但在HTML 3.2中已弃用它,而在HTML 4.0中将其完全删除(很久以前:1997年)。

xmp正在卷土重来而不是死亡。W3C
HTML5(由W3C工作人员描述为当前HTML规范)声明xmp已过时且不符合规定,但也对浏览器提出了要求:“用户代理必须在语义和目的上xmp以等同于pre元素的方式对待元素渲染。(尽管解析器对此元素具有特殊的行为。)因此,旧的解析行为不是明确要求的,而是明确隐含的。

2020-05-16