Question

Does anyone remember the XMP tag?

What was it used for and why was it deprecated?

Was it helpful?

Solution

A quick Google search on W3C reveals that XMP was introduced for displaying preformatted text in HTML 3.2 and earlier. When W3C deprecated the XMP tag, it suggested using the PRE tag as a preferred alternative.

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

OTHER TIPS

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

  • Content is shown with a fixed font,
  • All whitespace is preserved, and
  • Each line break begins a new line.

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.

In contrast, content within XMP tags does not need to be escaped.

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

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

XMP does some things that PRE does not support. I still depend on XMP, there is no substitute.

<xmp> is used with strapdown.js in formatting markdown notation. The name strapdown combining the terms bootstrap and markdown.

<!DOCTYPE html>
<html>
  <title>Example</title>
  <xmp theme="united">
## Example

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

I still use the xmp tag for debugging var_dump(); in PHP. I just can't remember to use the pre tag for some reason.

I think it doesn't really matter because if you really want to output text, you should use textarea with the readonly attribute.

I used <textarea>, which puts the html code into a neat box and clearly defines the code as different from the text before or after.

<textarea><b>boldtext</b><textarea>

Still works to show raw html - if you use it in script, break the start tag.

var stuff='<xmp'+'>this is shown as is<br/>hello</xmp>';
document.getElementById("x").innerHTML=stuff;
<div id="x"></div>

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

For HTML5. it was, according to the HTML5 editor (comments 11 and 12), a very close call either way.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top