HTML <pre> 标签

HTML <pre> 元素表示预定义格式文本。在该元素中的文本通常按照原文件中的编排,以等宽字体的形式展现出来,文本中的空白符(比如空格和换行符)都会显示出来。(紧跟在 <pre> 开始标签后的换行符也会被省略)


定义和用法

pre 元素可定义预格式化的文本。在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。

<pre> 标签的一个常见应用就是用来展示计算机的源代码。

可以导致段落分开的标签(例如标题 <p><address> 标签)绝不能包含在 <pre> 所定义的内容块里。尽管有些浏览器会把段落结束标签解析为简单地换行,但不是每个浏览器都会这样解析。

pre 元素中允许的文本可以包括固定样式、基于内容的动态样式,还有链接、图像和水平分隔线。当把其他标签(比如 <a> 标签)放到 <pre> 块中时,就像放在 HTML/XHTML 文档的其他部分中一样即可。请看下面的例子:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <h1>pre 元素</h1>
  5. <pre>
  6. 预定义格式文本中的内容
  7. 以固定宽度显示
  8. 字体,并保留
  9. 空间和
  10. 换行
  11. </pre>
  12. </body>
  13. </html>

如何创建具有固定宽度的预格式化文本(使用CSS):

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <h2>标准的 pre</h2>
  5. <pre>这是一个标准的pre。它需要多少空间就用多少空间。</pre>
  6. <h2>固定宽度的 pre</h2>
  7. <div style="width:200px;overflow:auto">
  8. <pre>这是一个固定宽度的pre。它将使用指定的空间。</pre>
  9. </div>
  10. </body>
  11. </html>

浏览器支持

元素
<pre>YesYesYesYesYes

所有浏览器都支持 <pre> 标签。


提示和注释

提示: 有时候我们为了对页面上的文字进行排版,可能需要用到tab制表符。每个制表符占据 8 个字符的位置。但是我们不推荐使用它,因为在不同的浏览器中,对 Tab的解析呈现都不一样。我可以在 <pre> 标签格式化的文档段中使用空格,也可以达到用tab来做的水平排版的效果。

提示:如果您希望使用 <pre> 标签来定义计算机源代码,比如 HTML 源代码,请使用符号实体来表示特殊字符,比如 "<" 代表 "<",">" 代表 ">","&" 代表 "&"。

提示: 在 本站 中,非常多页面中的源代码实例都是通过 <pre> 标签定义的,您可以参考这些页面,学习如何使用该标签。我们甚至把 <pre> 标签与<code> 标签结合起来使用,以达到更好的理解与学习效果。


HTML 与 XHTML 之间的差异

在 HTML 4.01 中,pre 元素的 "width" 属性是不建议使用的。在 XHTML 1.0 Strict DTD 中,不支持 pre 元素的 "width" 属性。


可选的属性

属性描述
widthnumber定义每行的最大字符数(通常是 40、80 或 132)。

标签属性

cols

定义每行的最大字符数。这是一个非标准的属性,作用与width相同。要实现这样的效果,应该使用CSS。

width

包含每行的最大字符数。虽然在技术上仍被实现,但这个属性没有视觉效果。要实现这样的效果,应该使用CSS。

wrap

提示溢出怎样发生。在现代浏览器中,这个提示会被忽略,且被没有视觉效果。要实现这样的效果,应该使用CSS。


事件属性

<pre> 标签支持 HTML 中的事件属性。