HTML <pre> 元素表示预定义格式文本。在该元素中的文本通常按照原文件中的编排,以等宽字体的形式展现出来,文本中的空白符(比如空格和换行符)都会显示出来。(紧跟在 <pre> 开始标签后的换行符也会被省略)
注意: 你需要将该元素里的 '<' 字符转义为 '<' 以保证代码里的关闭代码不被浏览器解释为标签。
内容类别 | 流内容( flow content) , 可触知的内容(palpable content). |
---|---|
允许的 内容 | Phrasing content. |
省略标签 | 不允许,开始标签和结束标签都不能省略。 |
允许的 父元素 | 任何可以接受流内容( flow content) 的元素 |
允许的 ARIA 角色 | 任何 |
DOM 接口 | HTMLPreElement |
属性
这个元素只具有全局属性。
cols
- 定义每行的最大字符数。这是一个非标准的属性,作用与
width
相同。要实现这样的效果,应该使用CSS。 width
- 包含每行的最大字符数。虽然在技术上仍被实现,但这个属性没有视觉效果。要实现这样的效果,应该使用CSS。
wrap
- 提示溢出怎样发生。在现代浏览器中,这个提示会被忽略,且被没有视觉效果。要实现这样的效果,应该使用CSS。
例子
<!-- Some example CSS code --> <pre> body { color:red; } </pre>
结果
body { color:red; }
规格
规格 | 现状 | 评论 |
---|---|---|
WHATWG HTML Living Standard <pre> |
Living Standard | No significant change from WHATWG HTML Living Standard |
HTML5 <pre> |
Recommendation | No significant change from HTML 4.01 Specification |
HTML 4.01 Specification <dl> |
Recommendation | Deprecated the cols attribute |
浏览器兼容性
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 1.0 | 1.0 (1.7 or earlier) | (Yes) | (Yes) | (Yes) |
width |
(Yes)[1] | 1.0 (1.7 or earlier) 29.0 (29.0)[1] |
(Yes)[1] | (Yes)[1] | (Yes)[1] |
cols |
未实现 | 1.0 (1.7 or earlier) 未实现 29.0 (29.0) |
未实现 | 未实现 | 未实现 |
wrap |
? | 1.0 (1.7 or earlier) | ? | ? | ? |
Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | (Yes) | 1.0 (1.0) | (Yes) | (Yes) | (Yes) |
width |
? | 1.0 (1.0)29.0 (29.0)[1] | ? | ? | ? |
cols |
未实现 | 1.0 (1.0) | 未实现 | 未实现 | 未实现 |
wrap |
? | 1.0 (1.0) | ? | ? | ? |
[1] 表明 width 属性没有实际效果
参见
- CSS:
white-space
,word-break