HTML e XHTML são os dois idiomas em que as páginas da web são escritas. HTML é
HTML é a linguagem de marcação predominante para páginas da web. O HTML cria documentos estruturados, denotando semântica estrutural para textos como títulos, listas, links, citações, etc. Permite que imagens e objetos sejam incorporados para criar formulários interativos. Ele é escrito como tags entre colchetes angulares - por exemplo, . Scripts em idiomas como JavaScript também podem ser carregados.
XHTML é uma família de linguagens XML que estendem ou espelham versões do HTML. Não permite a omissão de nenhuma tag ou o uso de minimização de atributo. O XHTML exige que haja uma tag final para cada tag inicial e todas as tags aninhadas devem ser fechadas na ordem correta. Por exemplo, enquanto
é válido em HTML, seria necessário escrever
em XHTML.
Os documentos HTML são compostos de elementos com três componentes - um par de tags de elemento - tag de início, tag de término; atributos de elemento fornecidos nas tags e conteúdo real, textual e gráfico. Elemento HTML é tudo o que existe entre e incluindo tags. (Tag é uma palavra-chave entre colchetes angulares).
Os documentos XHTML possuem apenas um elemento raiz. Todos os elementos, incluindo variáveis, devem estar em letras minúsculas e os valores atribuídos devem estar entre aspas, fechados e aninhados para serem reconhecidos. Este é um requisito obrigatório em XHTML, diferentemente do HTML, onde é opcional. A declaração do DOCTYPE determinaria regras para os documentos a seguir.
Além das diferentes declarações de abertura de um documento, as diferenças entre um documento HTML 4.01 e XHTML 1.0 - em cada um dos DTDs correspondentes - são amplamente sintáticas. A sintaxe subjacente do HTML permite muitos atalhos que o XHTML não permite, como elementos com tags de abertura ou fechamento opcionais e até elementos VAZIOS que não devem ter uma tag final. Por outro lado, o XHTML exige que todos os elementos tenham uma marca de abertura ou uma marca de fechamento. O XHTML, no entanto, também introduz um novo atalho: uma tag XHTML pode ser aberta e fechada dentro da mesma tag, incluindo uma barra antes do final da tag, assim:
. A introdução dessa abreviação, que não é usada na declaração SGML para HTML 4.01, pode confundir softwares anteriores não familiarizados com esta nova convenção. Uma correção para isso é incluir um espaço antes de fechar a tag, como tal:
.
HTML e XHTML estão intimamente relacionados e, portanto, podem ser documentados juntos. O HTML 4.01 e o XHTML 1.0 têm três subespecificações - estrito, flexível e conjunto de quadros. A diferença de abertura de declarações para um documento distingue HTML e XHTML. Outras diferenças são sintáticas. O HTML permite atalhos como elementos com tags opcionais, elementos vazios sem tags finais. XHTML é muito rigoroso quanto à abertura e fechamento de tags. O XHTML usa o atributo de funcionalidade que define a linguagem incorporada. Todos os requisitos de sintaxe do XML estão incluídos em um documento XHTML bem formado.
Observe, porém, que essas diferenças se aplicam apenas quando um documento XHTML é servido como um aplicativo XML; ou seja, com um tipo de aplicativo MIME / xhtml + xml, application / xml ou text / xml. Um documento XHTML veiculado com um tipo MIME de texto / html deve ser analisado e interpretado como HTML, portanto, as regras HTML se aplicam nesse caso. Uma folha de estilos gravada para um documento XHTML que está sendo veiculado com um tipo de texto / html MIME pode não funcionar conforme o esperado, se o documento for veiculado com um tipo de aplicativo MIME / xhtml + xml. Para obter mais informações sobre os tipos MIME, leia Tipos MIME..
Isso pode ser especialmente importante quando você estiver exibindo documentos XHTML como texto / html. A menos que esteja ciente das diferenças, você pode criar folhas de estilo que não funcionarão como planejado se o documento for exibido como XHTML real.
Onde os termos “XHTML” e “documento XHTML” aparecerem no restante desta seção, eles se referirão à marcação XHTML veiculada com um tipo XML MIME. A marcação XHTML servida como text / html é um documento HTML no que diz respeito aos navegadores.
Conforme recomendado pelo W3C, as seguintes etapas podem ser seguidas para a migração de HTML para XHTML (documentos XHTML 1.0):
Seguindo cuidadosamente as diretrizes do W3C sobre compatibilidade, um agente de usuário (navegador da web) deve ser capaz de interpretar documentos com a mesma facilidade que HTML ou XHTML.
Para entender o sutil diferenças entre HTML e XHTML, considere a transformação de um documento XHTML 1.0 válido e bem formado em um documento HTML 4.01 válido. Para fazer esta tradução requer os seguintes passos:
lang
atributo em vez do XHTML xml: lang
atributo. XHTML usa o atributo de funcionalidade que define a linguagem do XML. xmlns = URI
) HTML não possui recursos para namespaces.
). text / html
. Para HTML e XHTML, isso vem do HTTP Tipo de conteúdo
cabeçalho enviado pelo servidor.
para
).