Se estudiarán paso a paso las reglas para escribir documentos XHTML (lenguaje de marcas hipertextual extensible), mientras se mostrará qué sintaxis HTML (lenguaje de marcas hipertextual) representan una violación del estándar XHTML. También daremos una idea de la procedencia de XHTML y de por qué se suscitó la necesidad para este cambio. Finalmente, aprenderás a escribir código XHTML y a revisar si tu código es válido (es decir, obedece al estándar).
HTML nació en 1980 como un proyecto de Tim Berners-Lee basado en el concepto de hipertexto, que ayudaría a investigadores a compartir información en forma de documentos sobre Internet. Fue implementado más tarde en 1989 en la CERN (organización europea para la investigación nuclear), el nodo más grande en Europa. Desde allí, HTML comenzó su evolución que no está aún concluida, pasando por las versiones 2.0, 3.2, 4.0 y 4.01, todas ellas basadas en SGML (lenguaje de etiquetado estándar generalizado: un metalenguaje usado para crear otros lenguajes como sublenguajes del mismo).
Por otro lado, XML (lenguaje de marcas extensible) es también un metalenguaje (usado para crear otros lenguajes) y es también un sublenguaje de SGML, diseñado para ser más simple de procesar. En estos días, XML es ampliamente utilizado en diferentes formas para construir documentos y organizar información (por ejemplo, RSS (redifusión realmente simple), Atom, etc.) ya que provee una forma estándar de lograrlo que es más fácil de procesar que SGML.
En el año 2000, XHTML es recomendado por el World Wide Web Consortium (W3C) como la nueva versión estándar de HTML basada en XML en lugar de SGML. De esta forma, podemos considerar a XHTML como el resultado de mezclar HTML y XML. Hecho esto, todos los beneficios de XML son ahora heredados por HTML lo que lo hace más fácil de procesar, y por lo tanto estar disponible en más plataformas con capacidades de procesamiento reducidas (por ejemplo, PDAs (asistente digital personal) y teléfonos celulares).
Otro motivo para actualizar las versiones de HTML y para la creación del W3C es el reestablecimiento del propósito original de HTML como un lenguaje semántico. Desde que fue implementado, muchos fabricantes de navegadores comenzaron a transformar el estándar con el objeto de agregarle más funcionalidad. Esto lo convirtió lentamente en un lenguaje más visual que semántico, lo que inspiró al W3C a crear nuevos estándares pensados para revertir este efecto y retornarlo a su origen semántico. XHTML 1.1 es la más reciente de estas actualizaciones pero hay más por venir.
Las reglas a seguir para crear un documento XHTML son simples. Al ser una adaptación de la versión 4.01 de HTML (basada en SGML) al formato XML (también basado en SGML), la mayoría de las características no han cambiado. Solamente unas pocas nuevas reglas fueron implementadas que harán al documento compatible con XML y algunos otros cambios pensados para transformar al lenguaje en uno semántico.
La declaración XML es una simple línea y define la versión de XML y la codificación de caracteres que el documento utiliza. Debe ser declarada antes que cualquier cosa en el documento, incluso antes que la declaración de tipo del documento (tag HTML !DOCTYPE).
La declaración del tipo de documento no es solamente utilizada por documentos XHTML, sino por cualquier tipo de documento. En todo caso deberías usar el DTD correcto a través del tag HTML !DOCTYPE. Los DTDs para documentos XHTML son cuatro y dependen de la versión que uses:
XHTML 1.0: Strict, Transitional y Frameset
XHTML 1.1
La declaración de nombre de espacio XML es una simple URL (localizador uniforme de recursos) y puede ser definida como el valor del atributo "xmlns" para el tag html.
Esta lista de reglas debe ser considerada como una lista de diferencias entre HTML y XHTML. Si nunca has escrito documentos HTML anteriormente, considera esta lista de recomendaciones mientras lees los tutoriales HTML y la referencia HTML. Encontrarás que en cada lugar posible de este sitio, estas recomendaciones están presentes.
<p>Párrafo</p><p>Párrafo<img src="boton.jpg"></img><img src="boton.jpg" /><img src="boton.jpg"><a href="http://www.htmlquick.com/es/tutorials.html">Texto ancla</a><A Href="http://www.htmlquick.com/es/tutorials.html">Texto ancla</A><input type="submit" /><input type="SUBMIT" /><span id="id1" class='importante'>Texto</span><span class=importante>Texto</span><button id="boton1" disabled="disabled">Ejecutar</button><button id="boton1" disabled>Ejecutar</button><span class="doble"><b>Ejecutar</b></span><span class="doble"><b>Ejecutar</span></b><div class="doble"><b>Ejecutar</b></div><b><div class="doble">Ejecutar</div></b><a href="compraventa.php?id=1&sub=2">Compra & venta</a><a href="compraventa.php?id=1&sub=2">Compra & venta</a>á - á (para á)á - &aAcuTe; (para á)<img src="pajaro.jpg" alt="Un pájaro volando"></img><img src="pajaro.jpg"></img><style type="text/css">
<![CDATA[
p { color: blue; }
]]>
</style><style type="text/css">
<!--
p { color: blue; }
-->
</style>En adición a aquellas declaradas anteriormente, los documentos estrictos de XHTML (XHTML 1.0 Strict y XHTML 1.1) deben seguir estas reglas.
<body><p>Texto</p></body><body>Texto</body>