Tag HTML <plaintext>
O conteúdo da tag <plaintext> é exibido como texto simples sem formatação. Descrição e exemplos de uso.
A tag <plaintext> instrui o navegador a exibir tudo o que vem depois dela como texto simples, sem nenhuma formatação HTML. Quando o parser encontra essa tag, ele entra no modo de texto bruto e trata todo o conteúdo subsequente do documento como texto simples, ignorando todas as tags que vierem depois.
Obsoleta — nunca use <plaintext>. Ela está obsoleta desde o HTML2 e não faz parte de nenhum padrão HTML moderno. Os navegadores ainda a renderizam apenas por compatibilidade retroativa, e seu comportamento é irreversivelmente destrutivo (veja abaixo). Para exibir texto literal, use <pre> e/ou <code>.
Por que <plaintext> é irreversivelmente perigosa
O fato crítico sobre <plaintext> é que ela não possui tag de fechamento. Não existe um </plaintext> que o navegador reconheça. Uma vez que o parser entra em <plaintext>, ele consome o restante do documento como texto literal — incluindo qualquer marcação que venha depois, até o final do arquivo:
- Tudo após
<plaintext>é exibido como texto bruto, portanto qualquer HTML real escrito depois (parágrafos, scripts, estilos) é exibido como código-fonte em vez de ser renderizado. - As tags de fechamento
</body>e</html>também são consumidas como texto, fazendo com que o documento nunca seja fechado corretamente. - Não é possível "desligá-la". Não há como sair do modo de texto simples uma vez iniciado, razão pela qual um único
<plaintext>pode quebrar uma página inteira.
Por essas razões, <plaintext> deve ser tratada como um artefato histórico a ser reconhecido em código antigo, e não como uma ferramenta a ser utilizada.
Se <plaintext> fosse o primeiro elemento na página, toda a resposta do documento seria tratada como texto simples. Nessa situação, servir o arquivo com o tipo MIME text/plain é a abordagem correta — não esta tag.
O que usar em vez disso
Para exibir com segurança texto literal ou código, combine <pre> (que preserva espaços em branco e quebras de linha) com <code> (que marca o texto como código), e escape os caracteres com significado especial em HTML: escreva < para <, > para > e & para &. O escape é o que faz os colchetes angulares serem renderizados como texto em vez de serem interpretados como tags.
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
</head>
<body>
<p>The code below is shown as literal text:</p>
<pre><code><h1>Main title of the document</h1>
<p>First paragraph of the text</p>
<h2>Subheading</h2></code></pre>
</body>
</html>Ao contrário de <plaintext>, <pre> possui uma tag de fechamento adequada (</pre>), portanto a região de texto literal termina exatamente onde você deseja e o restante da página é renderizado normalmente. Você também pode aplicar uma fonte monoespaçada a qualquer elemento HTML com a propriedade CSS font-family e o valor genérico monospace.
Para contexto histórico, a tag <xmp> é outra forma obsoleta de exibir texto literal; assim como <plaintext>, não deve ser utilizada. Consulte a lista completa de tags HTML obsoletas a evitar.
Sintaxe
A tag <plaintext> não é um elemento vazio, mas sua tag de fechamento é proibida — não existe </plaintext>. O parser HTML para de interpretar a marcação no momento em que encontra a tag de abertura, consumindo o restante do documento como texto simples.
Exemplo da tag HTML <plaintext>:
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
</head>
<body>
<p>The tag content looks like this:</p>
<plaintext>
<h1>Main title of the document</h1>
<p>First paragraph of the text</p>
<h2>Subheading</h2>
</body>
</html>Resultado

Atributos
A tag <plaintext> suporta os Atributos Globais.