XHTML

Origem: Wikipédia, a enciclopédia livre.
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; há 13 anos)
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)

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 xml:lang="en" 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:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <title>Dados para Cadastro</title>
  </head>
  <body>
     <form action="">
        <fieldset>
           <legend>Dados para Cadastro</legend>
           <label for="nome">Nome:</label>
           <input type="text" name="nome" id="nome" /><br />
           <label for="tipo">Tipo:</label>
           <input type="text" name="tipo" id="tipo" /><br />
           <label for="data">Data:</label>
           <input type="text" name="data" id="data" /><br />
           <input type="submit" value="enviar" />
        </fieldset>
     </form>
  </body>
</html>

O código CSS que formataria este código XHTML seria:

form input, form label, form legend {
  font-size: 11px;
}
form input {
  border: solid #ccc thin;
  font-family: 'Trebuchet MS', Verdana, Tahoma, serif;
  width: 100%;
}
form input[type="submit"] {
  display: block;
  float: right;
  margin-top: 13px;
  width: auto;
}
form fieldset, form legend {
  border: solid black thin;
  margin: 10px;
  padding: 6px;
}
form fieldset {
  width: 40%;
}
form label {
  display: block;
}
form legend {
  background-color: #e8e8e8;
  font-weight: bold;
}

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:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>Untitled Document</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:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>Untitled Document</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:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>Untitled Document</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]

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]

Referências

  1. «Normas XHTML 1.0 do W3C». Maujor. Consultado em 19 de fevereiro de 2020 
  2. a b «Introdução a Linguagens de Marcação: HTML, XHTML, SGML, XML.». IC UNICAMP. Consultado em 19 de fevereiro de 2020 
  3. «The W3C Markup Validation Service». validator.w3.org. Consultado em 5 de maio de 2011 
  4. a b c «XHTML». MDN Web Docs. Consultado em 19 de fevereiro de 2020 
  5. XHTML Modularization
  6. XHTML Host Language Conforming Document
  7. «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 
  8. «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 
  9. HTML5 como um Working Draft

Ver também[editar | editar código-fonte]

Ligações externas[editar | editar código-fonte]

Wikilivros
Wikilivros
O Wikilivros tem um livro chamado Curso de XHTML