HTML

O que é um arquivo HTML?

O formato das páginas da web. Passar para PDF é o jeito de arquivar ou imprimir uma página.

O que é HTML

HTML é um formato de texto puro que abre em qualquer editor. Ele pode ter pixels e formas desenhadas na mesma página. Ele é usado para a web e a edição.

A extensão é .html e o nome por extenso é HyperText Markup Language. Os dois importam menos do que aquilo que o arquivo consegue carregar, e é disso que trata o resto desta página.

De onde vem HTML

Ele vem da WHATWG. A especificação é HTML Living Standard.

A idade interessa por um motivo prático: quanto mais antigo o formato, mais programas tiveram tempo de aprendê-lo.

A especificação é pública

Ela está publicada por inteiro, então dá para implementá-la a partir do documento em vez de por observação — é por isso que o formato aparece em tantos programas e por isso que arquivos escritos há vinte anos ainda abrem. Especificação publicada não é o mesmo que livre de royalties: quando o formato embrulha um codec, o licenciamento das patentes é uma questão à parte, que a norma não resolve.

O que abre HTML

Visual Studio Code e Google Chrome leem esse formato, e a maioria dos programas do mesmo tipo também.

Quando um arquivo não abre, o formato raramente é o problema — mais comum é o programa ser mais antigo que ele. Converter para algo mais antigo é o caminho confiável, e é para isso que serve o resto deste site.

Abrir no navegador

Qualquer navegador atual lê o formato.

Dá para colocá-lo numa página ou anexá-lo a uma mensagem sem se perguntar o que o outro lado tem instalado.

É um formato de trabalho

HTML foi feito para ser aberto e alterado. Mantenha o arquivo nesse formato enquanto o trabalho estiver em andamento e exporte a partir dele sempre que precisar de uma cópia pronta.

O arquivo não é a página

Esta é a coisa mais importante para entender sobre HTML, e quase toda dificuldade com ele vem daqui. Um arquivo HTML contém o texto e a estrutura — títulos, parágrafos, tabelas, links — e aponta para tudo mais. A folha de estilo que dá a aparência de projetado é um arquivo separado. Também são as imagens, as fontes, os scripts e qualquer coisa carregada de outro servidor.

Então um arquivo HTML salvo sozinho e aberto depois mostra o conteúdo sem nenhuma aparência: títulos sem estilo, imagens faltando, uma página que parece de 1994. Nada está corrompido. As referências simplesmente não levam a lugar nenhum, porque o que apontavam nunca esteve no arquivo.

Por que "Salvar página como" dá uma pasta

Navegadores sabem disso, por isso salvar uma página produz um arquivo HTML e uma pasta ao lado com nome correspondente, guardando as imagens e folhas de estilo. Os dois viajam juntos ou não viajam de jeito nenhum — mande o HTML sozinho por e-mail e o destinatário recebe a versão sem estilo.

A maioria dos navegadores também oferece uma opção de arquivo único, às vezes chamada "Página web, completa" ou MHTML, que empacota tudo num arquivo só. Isso resolve o problema de transporte e cria um novo: o resultado só é lido de forma confiável num navegador da mesma família. Para entregar uma página a alguém, PDF é o formato que realmente se comporta — um arquivo, tudo embutido, e parece igual para todo mundo.

HTML para PDF é uma renderização, não uma tradução

Converter um formato de documento geralmente significa mapear um conjunto de estruturas em outro. Converter HTML para PDF é diferente: a página precisa ser diagramada primeiro, porque nada no arquivo diz a largura de nada. Um navegador decide isso a partir do tamanho da janela, da folha de estilo e das fontes disponíveis, e só então existem posições para colocar numa página.

É por isso que a mesma página produz PDFs diferentes em ferramentas diferentes, e por que uma página que depende de um script para montar seu conteúdo pode sair vazia. Também é por isso que existem folhas de estilo de impressão — um site bem feito tem um conjunto de regras para como a página deve parecer no papel.

Para que o HTML serve além de páginas web

E-mail. Quase toda mensagem de marketing e notificação é HTML, escrita contra um subconjunto muito mais antigo e estranho do que uma página web usa — tabelas de layout, estilos inline, e nenhum recurso moderno, porque clientes de e-mail renderizam com motores que pararam de evoluir há muito tempo. Um HTML exportado de um cliente de e-mail vai parecer errado num navegador por esse motivo, e não é um defeito da exportação.

Documentação e relatórios são o outro grande uso. Qualquer coisa gerada por uma ferramenta — resultados de teste, relatórios de cobertura, exportações de análise, capítulos de e-book — tende a ser HTML, porque toda máquina consegue exibir sem licenciar nada. EPUB, o formato de e-book, é um ZIP de arquivos HTML com um manifesto.

Codificação, e os losangos pretos

Um arquivo HTML é texto, o que significa que alguém precisa decidir como as letras são armazenadas, e o arquivo declara isso numa tag meta perto do topo. Errar essa declaração faz caracteres acentuados, aspas curvas e qualquer script não latino saírem como pontos de interrogação, losangos pretos ou pares de letras sem sentido.

UTF-8 é a resposta em todo lugar hoje, e um arquivo sem declaração é um chute de quem quer que o abra. Se uma página parece bem num navegador e bagunçada em outro, quase sempre é por isso — o arquivo, não o leitor, é que está sem a informação.

Editando HTML à mão

É texto, então qualquer editor funciona. Um editor feito para código adiciona duas coisas que valem a pena: colore as tags para a estrutura ficar visível de relance, e aponta um elemento não fechado antes de você gastar vinte minutos se perguntando por que metade da página ficou em negrito.

O que nenhum editor consegue fazer é te proteger do navegador sendo tolerante. HTML não tem interpretador rigoroso — uma página malformada não é rejeitada, é reparada segundo regras, e o reparo pode não ser o que você quis dizer. Uma página que parece certa não é prova de que a marcação está certa, e é para isso que servem os validadores.

Mantendo uma página HTML legível daqui a dez anos

O HTML em si é seguro. É o formato mais amplamente implementado que existe, é especificado publicamente, e um documento escrito em 1995 ainda renderiza. O risco é tudo ao redor: uma página cujo layout depende de um script de uma rede de entrega de conteúdo, ou cujas imagens ficam num servidor, vira uma casca vazia no momento em que qualquer um dos dois desaparece.

Para um arquivo, converta para PDF — o layout e cada recurso acabam dentro de um único arquivo que não precisa de nada além de um leitor. Guarde o HTML também, já que é a versão que ainda pode ser pesquisada, editada e renderizada de novo. Os dois juntos são a resposta durável; qualquer um sozinho é uma concessão.

Os dados, num lugar só

Identificadores e procedência do formato HTML.
Extensão.html, .htm
Tipo de mídiatext/html
Publicado porWHATWG
EspecificaçãoHTML Living Standard

Arquivos HTML: perguntas frequentes

Por que minha página HTML salva parece quebrada?

Porque a aparência não está no arquivo. Folhas de estilo, imagens e fontes são arquivos separados que o HTML aponta, e se não foram salvos junto — ou a pasta ao lado foi movida — a página renderiza sem estilo nenhum. Nada está danificado; as referências simplesmente não levam a lugar nenhum.

Como eu abro um arquivo HTML?

Dê duplo clique e ele abre no seu navegador, para o qual foi feito. Para ver a marcação em vez da página, abra num editor de texto, ou use "Ver código-fonte" no navegador.

Consigo converter HTML para PDF mantendo o layout?

Na maior parte, com duas ressalvas. A página precisa ser diagramada primeiro, então o resultado depende dos recursos estarem acessíveis, e conteúdo montado por scripts depois do carregamento da página pode estar ausente. Um site com folha de estilo de impressão converte visivelmente melhor que um sem.

Qual a diferença entre HTML e HTM?

Nenhuma. A forma de três letras é resquício de sistemas operacionais que só permitiam extensões de três caracteres. Os dois abrem de forma idêntica em qualquer lugar.

Por que aparecem caracteres estranhos no meu arquivo HTML?

A codificação de caracteres está errada ou ausente. O arquivo deveria declarar UTF-8 numa tag meta perto do topo; sem isso, o navegador chuta, e um chute errado transforma letras acentuadas e aspas em pontos de interrogação ou losangos pretos.

HTML é um bom formato para arquivar um documento?

Sozinho, não — os recursos de que depende podem desaparecer. Arquive um PDF pela aparência fixa e guarde o HTML pela origem pesquisável e editável. Juntos cobrem os dois casos; qualquer um sozinho deixa uma lacuna.