Como hab�is podido observar,los documentos XHTML que hemos generado se visualizan perfectamente en el navegador IE5. Aunque esto no es as� en todos los navegadores. Y en algunos de �llos hay problemas ,debido sobretodo a los elementos vac�os como <br/>, <hr/>, etc.
Aunque, seg�n la especificaci�n no hay ninguna obligaci�n que los documentos XHTML 1.0 sean compatibles con los navegadores existentes, en la pr�ctica es algo f�cil de conseguir. Las principales directrices para crear documentos compatibles seg�n la especificaci�n son las siguientes:
- Elemento vac�os. Incluir un espacio en blanco antes de la barra y �ngulo de cierre / y > de los elementos vac�os, por ejemplo: <br />, <hr /> y <img src="imagen.gif" alt="imagen" />. Tambi�n usar la sintaxis minimizada de etiquetas para los elementos vac�os, por ejemplo <br />, dado que la sintaxis alternativa a <br></br> permitida por XML da resultados no previsibles en muchos de los navegadores ya existentes. Debemos fijarnos como la aplicaci�n Tidy tiene en cuenta esta regla en el momento de generar el XHTML.
- Minimizaci�n de elementos. Dado un elemento vac�o cuyo modelo de contenido no es empty, como por ejempo un t�tulo o un p�rrafo, no utilizar la forma minimizada, es decir escribirlo como: <p> </p> en lugar de <p/>.
- Hojas de estilo y archivos de c�digo incrustados.Usar hojas de estilo externas o ficheros de c�digo externo si la hoja o el c�digo en cuesti�n utiliza los caracteres < o & o ]]> o --. Notar que los analizadores XML tienen permitido suprimir el contenido de los comentarios. De esta manera, la pr�ctica com�n hasta ahora de "esconder" los fragmentos de c�digo (script) y hojas de estilo (style) entre comentarios, para hacerlos invisibles a antiguos navegadores, normalmente no funcionar� en aplicaciones basadas en XML.
- Saltos de l�nea dentro de valores de atributos. Evitar saltos de l�nea y m�ltiples espacios en blanco dentro de los valores de los atributos. Estos son manipulados de manera inconsistente por los navegadores.
- Identificadores de fragmentos. En XML, los URI que terminan con identificadores de fragmentos del tipo #identificador no se refieren a elementos con un atributo name=identificador, sino que se refieren a elementos con un atributo de tipo ID. Muchos navegadores actuales no soportan este uso de atributos de tipo ID, de tal manera que se pueden dar valores id�nticos a ambos atributos para asegurar la m�xima compatibilidad futura y retroactiva. Por tanto, en estos casos es recomendable escribir: <a id="identificador" name="identificador">...</a>. Finalmente, notar que XHTML 1.0 tiende a desechar el atributo name de los elementos.
- Uso del car�cter & en valores de atributos. Cuando el valor de un atributo contenga un car�cter &, debe expresarse como una referencia a la entidad de tipo car�cter (por ejemplo: &"). Por ejemplo, cuando el atributo href del elemento a apunte a un c�digo CGI que tome par�metros debe expresarse como http://www.ciberaula.com/cgi-bin/programa.pl?dato1=33&dato2=43 en lugar de http://www.ciberaula.com/cgi-bin/programa.pl?dato1=33&dato2=43
- Codificaci�n de caracteres. Para especificar una codificaci�n de caracteres en el documento,usar tanto la especificaci�n del atributo de codificaci�n en la declaraci�n XML (por ejemplo <?xml version="1.0" encoding="iso-88590-1"?>) como una sentencia meta http-equiv (por ejemplo <meta http-equiv="Content-type" content='text/html; charset="iso-88590-1"' />). El valor del atributo de codificaci�n de la instrucci�n de proceso XML tiene preferencia.
Existen algunas directrices m�s, pero siguiendo �sta tendr�a que ser suficiente para conseguir que nuestros documentos XHTML se vean correctamente en los navegadores actuales.