Y que tal no enviar la linea cuando el agente no lo soporta y todos felices?

<?php
$XMLDeclaration = '<?xml version="1.0" encoding="iso-8859-1"?>'."\n";
$DTD = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="es">
';
if (isset($_SERVER["HTTP_ACCEPT"])) {
        if ( stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml") ) {
                header("Content-type: application/xhtml+xml");
                echo $XMLDeclaration;
        }
        else {
                header("Content-type: text/html");
        }
}
else {
        header("Content-type: application/xhtml+xml");
        echo $XMLDeclaration;
}
header("Vary: Accept");
echo $DTD;
echo "<head>\n";
echo "\t<meta http-equiv=\"content-type\" content=\"text/html; charset=iso-8859-1\" 
/>\n";
?>

Esto es en php, supongo que con asp y demas tambien se podra hacer.
Esto tiene que estar antes que cualquier salida o linea en blanco.

Esto NO es sniffing. Basicamente chequeamos en lo headers que envia el agente si soporta el tipo de contenido application/xhtml+xml. En caso afirmativo hacemos las cosas como corresponde. Sino lo hacemos al estilo explorer.
Si ni siquiera envio el header con el tipo de contenido que soporta, realmente no va a haber diferencia con lo que enviemos, asi que por las dudas lo hacemos como se debe.



Joseba Alonso wrote:
Vamos, que digo yo que tampoco pasa nada por no ponerlo. Mas que nada es

Si no pones esta linea, entonces no deberia trabajar con xhtml. Cuando menos no 1.1 En 1.0 esta permitido enviar tagsoup pero en 1.1 no.

interesante por el tema del encoding, pero en html se puede hacer a través de un <meta>. Y a cambio tienes al 70% de la gente que verá tu web como tu querrias que se viera. No creo que un formalismo sin ninguna utilidad practica merezca el sacrificio ni de un 1%. Aunque estoy de

Y quien dijo que no tiene ninguna utilidad practica? No la tendra con el explorer, pero con mozilla si.

acuerdo en que es un bug de lo mas asqueroso de IE6.

un saludo

Joseba Alonso
www.sidedev.net
www.5dms.com

Saludos

Ariel


_______________________________________________ Lista de distribución Ovillo Para escribir a la lista, envia un correo a [EMAIL PROTECTED] Puedes modificar tus datos o desuscribirte en la siguiente dirección: http://ovillo.org/mailman/listinfo/ovillo_ovillo.org

Responder a