Dans de plus en plus de sites Web, l'utilisation de XHTML remplace HTML4 à une vitesse très rapide. Cependant, certains navigateurs grand public ne prennent actuellement pas en charge XHTML, et certains fabricants de pages Web ne comprennent pas suffisamment les différences entre XHTML et HTML4, ce qui rend XHTML lent dans le développement du Web.
Xhtml est xml, pas htmlActuellement, l'un des principaux malentendus sur XHTML est qu'il s'agit d'une autre version de HTML. Un fait qui provoque ce malentendu est que Microsoft Internet Explorer ne prend en charge que XHTML avec MIME Format Text / HTML et non le format d'application / XHTML + XML recommandé.
Lorsqu'une page XHTML est analysée dans le format MIME du texte / HTML, il n'a aucune différence par rapport à la page HTML, et lorsqu'il est analysé dans le format MIME de Text / XML ou application / xhtml + XML, il se conformera à des règles de rédaction et d'affichage XML strictes.
Le format XHTML correct est un programme XML et doit suivre les règles strictes suivantes lors de l'écriture: 1. Caractères <et et ne sont pas autorisés à apparaître dans le contenu du document XHTML à moins qu'ils ne soient inclus dans la balise CDATA (<! [CDATA [...]>) 2. L'étiquette de commentaires (<! --...->) ne peut pas contenir deux barres horizontales consécutives (-) 3. Les contenus inclus dans la balise de commentaire (<! --....-->) seront ignorés Problèmes de style et de contenu de scriptLes contenus à l'intérieur du style et des balises de script provoqueront des différences différentes lorsque XHTML est analysé au format XML (plutôt que le format HTML).
JavaScript contient des caractères qui ne peuvent pas exister dans xhtml Certains caractères spéciaux de JavaScript sont des caractères qui ne peuvent pas exister en dehors de la balise CDATA de XHTML.<script type = text / javascript>
var i = 0;
while (++ i <10) {
// ...
}
</cript>
Remarque: l'exemple de code ci-dessus n'est pas un bon format xhtml car il n'utilise pas de balises autorisées dans xhtml ou xml <
Utilisez des commentaires dans le style et le contenu du scriptLes auteurs familiers avec HTML comprennent généralement que la place de contenu de style et de balise de script dans les balises de commentaire masquera ces contenus dans le navigateur, mais certains navigateurs ne peuvent pas les comprendre.
<style type = text / css>
<! -
Corps {couleur fond: bleu; couleur: jaune;}
->
</ style>
<script type = text / javascript>
<! -
var i = 0;
var sum = 0;
pour (i = 0; i <10; ++ i)
{
sum + = i;
}
alert ('sum =' + sum);
// ->
</cript>
L'exemple ci-dessus montre comment ignorer le contenu dans la balise de commentaire dans le navigateur. Dans le même temps, cet exemple montre également la différence entre le contenu du navigateur dans le format texte / xml et le format d'application / xhtml + xml.
Mozilla 1.1+ / opéra 7
Aucun CSS n'est appliqué, aucun javascript n'est exécuté
Netscape 7.0x / mozilla 1.0.x
N'appliquant pas CSS, mais exécutant JavaScript
Internet Explorer 5.5+
Le document n'est pas affiché. (Voir: https://developer.mozilla.org/ta ... _in_xhtml_documents)
Le style et le javascript contiennent deux barres horizontales consécutives (-)Un autre problème se pose lors de l'utilisation de balises de commentaire pour le traitement en JavaScript sur la page XHTML est qu'il y aura deux barres horizontales consécutives (-) en JavaScript:
<script type = text / javascript>
<! -
var i;
var sum = 0;
pour (i = 10; i> 0; --i)
{
sum + = i;
}
// ->
</cript>
Utilisez CDATA au lieu des commentairesMettre le contenu à l'intérieur de la balise de script dans le bloc CDATA peut gérer le problème de deux barres consécutives dans les commentaires, mais cela ne le fera pas soutenir par certaines versions inférieures des navigateurs car ils ne peuvent pas comprendre XML. Heureusement, nous pouvons commenter les blocs CDATA en utilisant des commentateurs en JavaScript pour atteindre la compatibilité.
<script type = text / javascript>
// <! [Cdata [
var i = 0;
tandis que (++ i <10)
{
// ...
}
//]]>
</cript>
Méthode de traitement de compatibilité XHTML et HTML recommandéeN'écrivez pas le style et le script directement dans les pages xhtml. Une bonne alternative consiste à utiliser des fichiers externes pour écrire CSS et JavaScript avant de l'introduire dans XHTML.
Cette solution de recommandation semble très bonne. Dans tous les cas, il fait passer la page du texte / HTML vers l'application / xhtml + xml, au moins dans les prochaines années.