📝 HTML <xmp>
Tag — Displaying Preformatted Text (Obsolete)
The <xmp>
tag was used in early HTML versions to display preformatted text, especially HTML or code, by showing it exactly as typed — including tags and whitespace — without interpreting the HTML inside.
📌 What Was the <xmp>
Tag?
- Stands for eXtensible Markup.
- Renders enclosed text as plain text, escaping HTML tags inside.
- Preserved whitespace and line breaks.
- Simplified displaying code snippets before the
<pre>
and<code>
tags became popular. - Obsolete and deprecated in modern HTML standards (HTML5).
- Browsers no longer support it reliably.
✅ Basic Syntax (Historical)
<xmp>
<div>This will not be rendered as a div, but shown as text.</div>
</xmp>
This would display:
<div>This will not be rendered as a div, but shown as text.</div>
⚠️ Why Avoid <xmp>
Today?
- Deprecated and invalid in HTML5.
- Causes parsing and rendering issues in modern browsers.
- Does not support nested tags or attributes properly.
- Lack of accessibility and semantic meaning.
- Replaced by better, more semantic elements.
✅ Modern Alternatives
To display code or preformatted text today, use:
<pre>
— preserves whitespace and line breaks.<code>
— indicates inline code or code snippets.- Combine
<pre>
and<code>
for block code:
<pre><code>
<div>This is a code block displayed as text.</div>
</code></pre>
- For escaping HTML characters inside code blocks, use character entities (
<
,>
, etc.) or tools that automatically escape text.
🏁 Summary
The <xmp>
tag is a deprecated HTML element once used for showing raw code or text but is no longer supported or recommended. Modern HTML favors semantic, accessible tags like <pre>
and <code>
for displaying code snippets and preformatted text.
🎯 Avoid
<xmp>
and use<pre>
and<code>
for proper, standards-compliant code presentation.