XHTML
XHTML | |
---|---|
Extensão do arquivo | .xhtml,.xht,.html,.htm
|
MIME | application/xhtml+xml
|
Desenvolvido por | World Wide Web Consortium |
Lançamento | 26 de janeiro de 2000 (24 anos) |
Última versão | 1.1 (23 de novembro de 2010 | )
Tipo de formato | Linguagem de marcação |
Variante de | HTML, XML |
Padronização | 1.0 (Recomendação), 1.1 (Recomendação), 1.1 SE (Working Draft), 5 (Working Draft), 2.0 (Working Draft) |
Internet |
---|
Categoria |
eXtensible Hypertext Markup Language (abreviado XHTML) é uma reformulação da linguagem de marcação HTML, combinada com as regras da linguagem de marcação XML (tags), uma recomendação do W3C de janeiro de 2000,[1] sucessora do HTML 4.01, objetivando a melhoria da exibição das páginas Web em diversos dispositivos (televisão, palm, celular, etc), além da melhoraria da acessibilidade do conteúdo.
O HTML é derivado da linguagem de marcação SGML (Standard Generalized Markup Language) criado por Tim Berners Lee (idealizador da WWW) para a exibição de documentos na Web. A evolução cronológica das linguagens é a seguinte:[2]
SGML → HTML 1.0 → HTML xx → XML → HTML 4.01 → XHTML (padrões internacionais da W3C, independentes de fabricantes de hardware ou software, sancionados pelas organizações ANSI e ISO).[2]
A principal diferença entre XHTML e HTML, é que o primeiro é XML válido, enquanto o segundo possui uma sintaxe própria, mas ambos possuem sentido semântico. Para verificar se uma página foi construída corretamente no padrão XHTML, existem diversos validadores, como por exemplo: a W3C disponibiliza um validador online.[3]
O tipo de sintaxe de uma página Web (tipo MIME) é definida no cabeçalho HTTP com o códigoContent-Type: aplication/xhtml+xml
, seguido por <html lang="pt-BR" xml:lang="pt-BR" xmlns="http://www.w3.org/1999/xhtml">
.[4]
Histórico
[editar | editar código-fonte]Na época do lançamento da tecnologia, considerava-se o XHTML como sendo o sucessor do HTML. Porém, está é uma recomendação separada; a W3C continua a recomendar o uso de XHTML 1.1, XHTML 1.0, e HTML 4.01, para publicação na web, assim como o HTML5.
Exemplos
[editar | editar código-fonte]Um exemplo simples de XHTML (observando dentro das tags <html></html>) seria:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="pt-BR" xml:lang="pt-BR" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Título do Documento</title>
</head>
<body>
<form action="." method="POST">
<fieldset>
<legend>Dados para cadastro</legend>
<label for="name-input">Nome:</label>
<input type="text" name="name" id="name-input" />
<label for="birth-input">Data de nascimento:</label>
<input type="date" name="birth" id="birth-input" />
<button>Enviar</button>
</fieldset>
</form>
</body>
</html>
O código CSS que formataria este código XHTML seria:
html {
color-scheme: light dark;
}
form {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100vh;
}
fieldset {
display: flex;
flex-direction: column;
input:not(last-child) {
margin-bottom: 12px;
}
}
Versões
[editar | editar código-fonte]XHTML 1.0
[editar | editar código-fonte]A Recomendação XHTML original da W3C, XHTML 1.0, foi simplesmente uma reformulação do HTML 4.01 em XML. Existem três diferentes "DTDs" de XHTML 1.0, cada qual com equivalência a uma versão em HTML 4.01.
- XHTML 1.0 Strict é o mesmo que HTML 4.01 Strict, mas seguindo regras de sintaxe XML.
Declaração da XHTML 1.0 Strict:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="pt-BR" xml:lang="pt-BR" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Título do Documento</title>
</head>
<body>
</body>
</html>
- XHTML 1.0 Transitional é o mesmo que HTML 4.01 Transitional, mas segue as regras de sintaxe XML. Ele suporta tudo encontrado no XHTML 1.0 Strict, mas também permite o uso de vários elementos e atributos que são julgados presencionais, para facilitar a transição de HTML 3.2 e mais recentes. Isso inclui
<center>
,<u>
,<strike>
, e<applet>
.
Declaração da XHTML 1.0 Transitional:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="pt-BR" xml:lang="pt-BR" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Título do Documento</title>
</head>
<body>
</body>
</html>
- XHTML 1.0 Frameset: é o mesmo que HTML 4.01 Frameset, mas seguindo as regras de sintaxe XML. Ele permite a definição de um frameset HTML, uma prática comum em versões de HTML anteriores ao HTML 4.01.
Declaração da XHTML 1.0 Frameset:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html lang="pt-BR" xml:lang="pt-BR" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Título do Documento</title>
</head>
<frameset>
</frameset>
</html>
XHTML 1.1
[editar | editar código-fonte]A mais recente Recomendação XHTML da W3C é o XHTML 1.1: Module-based XHTML, que é uma reformulação do XHTML 1.0 Strict, com pequenas modificações, usando alguns módulos de um conjunto definido em Modularização de XHTML,[5] uma Recomendação W3C que cria uma modularização de frames, um padrão de módulos, e várias outras definições. Todas as ferramentas depreciadas de HTML, como elementos presencionais e framesets, e até mesmo os atributoslang
e o atributo de âncorasname
, que ainda eram permitidos no XHTML 1.0 Strict, foram removidos desta versão. A apresentação é controlada puramente pelas Folhas de Estilo em Cascata (CSS). Esta versão também permite suporte à marcação rubi, necessária para línguas do Extremo Oriente (especialmente CJK).
Além da Modularização de XHTML permitir pequenas ferramentas XHTML serem reutilizadas por outras aplicações XML de uma maneira bem definida, e que o XHTML seja estendido para alguns propósitos, XHTML 1.1 adiciona o conceito de um documento "estritamente conformado": esses documentos definidos nos módulos requeridos para XHTML 1.1. Por exemplo, se um documento é estendido para usar o módulo XHTML Frames (frameset), ele também pode ser descrito como XHTML 1.1, mas não estritamente conforme o XHTML 1.1. Ao invés disso, ele deve ser descrito como um XHTML Host Language Conforming Document,[6] se a ferramenta for relevante e necessária.
Em 2007, uma segunda edição do XHTML 1.1 está em desenvolvimento pela W3C Working Draft.
HTML5 (esboço)
[editar | editar código-fonte]Em 10 de abril de 2007, a Fundação Mozilla, Apple Inc. e Opera Software propuseram[7] que o novo grupo de trabalho HTML da W3C adotasse o HTML5 do WHATWG como ponto de início de seu trabalho e, nomeá-lo como "HTML5". Em 9 de Maio de 2007, o grupo de trabalho HTML aceitou a proposta.[8] Em 22 de janeiro de 2008, o grupo publicou HTML5 como um Working Draft.[9]
O HTML5 traça uma serialização paralela do XML, chamada XHTML5. Diferente do XHTML 2.0, este é compatível com XHTML 1.x.
Outros membros da família XHTML
[editar | editar código-fonte]- XHTML Basic: Uma versão especial "light" do XHTML para serviços que não podem suportar os grandes e complicados dialetos XHTML, principalmente celulares. Este deverá ser o substituto da WML e C-HTML.
- XHTML Mobile Profile: Baseado em XHTML Basic, essa OMA tem como alvo celulares, devido ao fato de conter algumas ferramentas exclusivas para celulares do XHTML Basic.
- XHTML+Voice: XHTML combinado com VoiceXML para suportar ambas visuais e sonoras interações.
Documentos XHTML válidos
[editar | editar código-fonte]Um documento XHTML que está em conformidade com uma especificação XHTML, é dito válido. Validade garante consistência no código, que por sua vez facilita o processamento, mas não necessariamente garante renderização consistente nos navegadores. !--*/
p { color: green; } /*]]>*/-- >
</style> <script type="text/javascript">-->
Editores de HTML que suportam XHTML
[editar | editar código-fonte]- EditPlus
- Microsoft Expression Web
- Microsoft Frontpage
- Adobe GoLive
- Adobe Dreamweaver
- Aptana
- NVU
- Bluefish
- Quanta
- CoffeeCup HTML Editor
- CoffeeCup VisualSite Designer
- Evrsoft 1st.Page
- Kompozer
- Namo Web Editor
- Trellian WebPage
- Evrsoft First Page
- Geany
- Notepad++
- E Text Editor
Suporte
[editar | editar código-fonte]O XHTML é suportado na maioria dos navegadores modernos, como por exemplo: Firefox, Chrome, Safari, Opera, Internet Explorer suporta a partir da versão 9.[4]
Diversas bibliotecas de JavaScript não suportam XHTML, ou tem suporte limitado.[4]
Ver também
[editar | editar código-fonte]Referências
- ↑ «Normas XHTML 1.0 do W3C». Maujor. Consultado em 19 de fevereiro de 2020
- ↑ a b «Introdução a Linguagens de Marcação: HTML, XHTML, SGML, XML.». IC UNICAMP. Consultado em 19 de fevereiro de 2020
- ↑ «The W3C Markup Validation Service». validator.w3.org. Consultado em 5 de maio de 2011
- ↑ a b c «XHTML». MDN Web Docs. Consultado em 19 de fevereiro de 2020
- ↑ XHTML Modularization
- ↑ XHTML Host Language Conforming Document
- ↑ «Proposal to Adopt HTML5 from Maciej Stachowiak on 2007-04-10 (public-html@w3.org from April 2007)». lists.w3.org. Consultado em 5 de maio de 2011
- ↑ «results of HTML 5 text, editor, name questions from Dan Connolly on 2007-05-09 (public-html@w3.org from May 2007)». lists.w3.org. Consultado em 5 de maio de 2011
- ↑ HTML5 como um Working Draft
Ligações externas
[editar | editar código-fonte]- «The XML syntax» (em inglês). Especificação do HTML
- «Estruturando a web com HTML». Guia na MDN Web Docs