如何在网页中添加纯文本代码?

12

我知道这是可能的,因为这个网站就是这么做的,但我尝试了一下如何实现,并且只得到了一堆垃圾,那么如何在网页段落中添加标签而不让浏览器将其解释为代码呢?

例如,如果我有<p><div></div></p>,我想要div作为文本显示在浏览器中,而不是让浏览器将其解释为html。这很难实现吗?

我一直在为学校写教程,如果我能以文本形式直接将代码添加到网页中,而不是使用图像,那么学生可以复制和粘贴,这将会更加方便。

11个回答

15

看看这个网站本身是如何实现这一点的:

<p>For example, if I have <code>&lt;p&gt;&lt;div&gt;&lt;/div&gt;&lt;/p&gt;</code>, I want the div to display in the browser as text not have the browser interpret it as html. Is this complicated to do?</p>

您需要使用HTML字符实体替换<和>。


3
不必转义“>”(虽然出于对称性原因可以这样做),但通常需要除“<”以外的字符还要转义“&”。 - Jukka K. Korpela

11

有许多使用方法:

  1. Replace < with &lt;

    `&lt;h1>This is heading &lt;/small>&lt;/h1>`
    
  2. Place the code inside </xmp><xmp> tags

    <xmp>
        <ul>
            <li>Coffee</li>
            <li>Tea</li>
        </ul>
    </xmp>
    
我不建议使用其他方法,因为像<plaintext><listing>这样的方法不能在所有浏览器中正常工作。

6
你需要了解一些叫做“HTML实体”的东西。
例如,如果你想要在网站上显示字符“<”,你可以使用以下HTML代码:&lt;。这里有五个基本的HTML实体及其源代码等效形式:
< &lt;
> &gt;
" &quot;
' &apos;
& &amp;

如果您正在使用编程语言(如PHP或ASP.NET),那么可能有内置命令会为您执行转换(分别是htmlspecialchars()Server.HtmlEncode)。


6

在一段需要重新格式化的文本前加上标签<PRE>,并在后面加上</PRE>。这两个标签之间的文本将以等宽字体呈现,换行和空格与原始文件中的相同位置相同。这对于渲染诗歌而不添加大量HTML代码可能会有所帮助。试试这个:

Mary had a little lamb. 
    Its fleece was white as snow.
And everywhere that Mary went
    the lamb was sure to go.


最佳解决方案,节省时间!我可以添加一些小的样式改进: - yulian

4
为了在网页中添加纯文本代码,需要对以下五个字符进行 HTML字符转义 < 表示为 &lt;
> 表示为 &gt;
& 表示为 &amp;
' 表示为 &apos;
" 表示为 &quot;

(或者)

<xmp> 标签也可以作为备用方法使用,但该标签会影响样式且已过时。

<xmp>Code with HTML Tags like <div> etc. </xmp>

根据MDN<xmp>标签已经过时。我刚测试了一下,在Chrome中无法正确呈现。 - ChrisDevWard

1
使用标签的HTML实体/特殊字符,例如&lt;(表示小于号)。
&lt;p&gt; in html -> <p> in browser

由于开标签没有歧义,因此您还可以编写&lt;p>

许多语言都有内置方法来转换HTML特殊字符,例如php的htmlspecialchars


0
你需要转义HTML标签,即小于号。将其写成&lt;,它将在HTML页面上显示为<。

0

您的HTML不能在标签中。如果您使用<>标记,则会将其转换为代码而不是文本,如果我要在句子中间写<br>,那么它将变成这样。您需要用代码来编写代码,使用< > (&lt; &gt;),然后您就可以得到所需的内容。


0

我刚在CSS-Tricks上发现了一个更简单的解决方案... 只需将最外层包装器设置为“pre”标记,后跟“code”标记,然后在代码标记中使用括号放置您的代码即可。


这对我没有起作用。你能演示一下吗? - abalter

0
使用 iframe 和 txt 文件: <iframe src="html.txt"></iframe>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接