什么是<XMP>标签用于?

有没有人记得 XMP 标签?

它用于什么?为什么它被弃用?

0

8 答案

在W3C上快速搜索Google表明, XMP 是为了在HTML 3.2及更早版本中显示预格式化文本而引入的。当W3C弃用 XMP 标记时,它建议使用 PRE 标记作为首选替代。

Update: http://www.w3.org/TR/REC-html32#xmp, http://www.w3.org/MarkUp/html-spec/html-spec_5.html#SEC5.5.2.1

0
额外
实际上,它们在HTML 3.0参考文献中已经被标记为“过时”。 1995年8月1日 w3.org/MarkUp/html3/html3.dtd 。顺便说一下,这也引用了它被弃用的确切原因(这将是OP第二个问题的答案)。
额外 作者 Mr Lister,
pre不是一个替代xmp引用所有包含的文本。非常适合调试。虽然不安全。无处不在AFAIK。
额外 作者 Tuntable,

仍然可以显示原始HTML - 如果您在脚本中使用它,请打开开始标记。

<div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false"> <div class="snippet-code">

var stuff='
this is shown as is
hello
';
document.getElementById("x").innerHTML=stuff;
<div id="x"></div>
</div> </div>
0
额外
为什么downvote?
额外 作者 mplungjan,

See http://www.w3.org/Bugs/Public/show_bug.cgi?id=12235

对于HTML5。根据HTML5编辑器(评论11和12)的说法,两种方式都非常接近。

0
额外

我仍然使用 xmp 标记在PHP中调试 var_dump(); 。由于某种原因,我不记得使用 pre 标签。

我认为这并不重要,因为如果你真的想输出文本,你应该使用 textareareadonly 属性。

0
额外
这对于这个目的非常方便。由于 var_dump()不会返回任何东西,因此需要输出缓冲区函数对其输出进行HTML编码。
 是编写包装函数的快速替代方法,可以在任何地方使用。
额外 作者 Álvaro González,

XMP and PRE differ. Content within PRE tags is formatted as follows:

  • 内容以固定字体显示
  • 所有空格都保留下来,
  • 每个换行符开始一个新行。

If you want to include special characters such as <, > and & within PRE tags, they must be escaped so that they are not subject to special interpretation by the browser.

相比之下, XMP 标签中的内容不需要转义。

The only character sequence that cannot be included within XMP tags is the XMP end tag ().

XMP is still supported by the browsers I have tested. You can try it with xmp.html. View the source to see the tags.

0
额外
@dadinck,您的xml.html链接指向“与本网站相关的网站托管帐户已暂时中止!” ....
额外 作者 Pacerier,
您忘记了
 。除了所有(包括任何 
)之外,
  标签将逐字打印,包括 </body>  </html> 
额外 作者 Boldewyn,
安全说明:XMP 不是 XSS保护 - 它的唯一目的是当您自己创建静态 HTML页,并且您想要显示一些代码没有逃脱它...
额外 作者 jave.web,
我提出了四种表示代码的方式。 Textarea似乎是赢家。以下是我的评价: dadinck.x10.mx/code_example.html
额外 作者 dadinck,
@Pacerier对不起。那只是暂时的。它又回来了。
额外 作者 dadinck,

XMP做了一些比PRE不支持的事情(作为一个很长时间的HTML / CSS / JavaScript作者,你只需要相信我,不然)。我仍然依赖XMP,没有替代品(PRE是 - 不是 - 替代品,不管任何人说什么......甚至不接近)。

0
额外
如何 作为替代品?
额外 作者 James Love,
 忽略HTML标签和实体;  
 没有。
额外 作者 Álvaro González,
也许你可以解释为什么PRE不是XMP的替代品。就目前而言,这不是一个真正的答案。
额外 作者 Anders R. Bystrup,
如何使用服务器端脚本转义? :P ................................................ ............&zwnj; ....................&zwnj; .......... <�代码>
 <��������������st ”,ENT_QUOTES); ?> 
</代码>
额外 作者 jave.web,
尝试使用xmp在浏览器中调试XML输出,然后使用pre。 xmp将显示正确的输出。
额外 作者 ?erban Ghi??,

I used

0
额外
 is used with strapdown.js in formatting markdown notation. The name strapdown combining the terms bootstrap and markdown.

<!DOCTYPE HTML>
<html>
  <title>Example</title>
  


## Example

 - note one
 - note two
 - note three
  
  <script src="http://strapdownjs.com/v/0.2/strapdown.js"></script>
</html>
0
额外