2010-01-24 4 views
2

Je suis sûr que tout le monde ici sait que nous ne pouvons pas servir les pages avec le bon type MIME (application/xhtml + xml) pour XHTML sans rompre la compatibilité IE, et tout contenu servi avec text/html sera analysé en HTML par n'importe quel navigateur là-bas.Si le contenu n'est pas analysé comme XMLQuels sont les avantages à utiliser XHTML 1.0 strict avec content = "text/html; over HTML 4.01 strict?

J'utilise un doctype xhtml uniquement pour une raison: il m'aide à trouver des "erreurs" dans mon balisage d'une manière plus stricte par rapport à html Même si mes documents sont servis en tant que texte/html

Y at-il un autre avantage à utiliser XHTML 1.0 Strict avec content = "text/html ; sur HTML 4.01 strict du tout? À l'heure actuelle ou et dans le futur.

  1. si je suis déjà bien écrire formais HTML valide 4.01 stricte et
  2. veulent pas utiliser un XHTML fonctionnalités supplémentaires (SVG, DocBook, MathML, OFX, etc),
  3. ne va jamais pour manipuler mon XHTML à XSL (T)
  4. jamais au document de goint serveur comme application/html + xml
+0

Ceci est un doublon: http: // stackoverflow.com/questions/867498/à la fin de la journée-pourquoi-choisir-xhtml-over-html –

Répondre

6

Aucune. Vous n'obtenez aucun des avantages de XHTML. En ce qui concerne le navigateur, il devient HTML bizarre, pas XML. Si vous voulez obtenir les avantages de XML, comme l'extensibilité et l'analyseur plus strict (si c'est un avantage), vous devez servir votre page comme application/xhtml+xml, et IE ne le supportera pas. Sans oublier que XHTML 1.0 est incompatible avec 2.0, alors que le HTML sera toujours à l'épreuve du futur.

Vous pouvez lire this, parmi beaucoup d'autres. En bref, n'utilisez XHTML que si vous en avez besoin, sinon c'est inutile. XHTML ne veut pas nécessairement dire que les navigateurs s'adapteront aux standards. Ne vous inquiétez pas des trucs du mode Standards vs Quirks, c'est quelque chose qui a été conservé pour une compatibilité descendante. Quand un navigateur rencontre une page avec un doctype (n'importe quel doctype, HTML ou XHTML), il essayera de le rendre selon les standards. Cela ne veut pas dire que ça va le rendre comme le dit le W3C, cela signifie simplement qu'il essayera de (et peut-être de ne pas réussir).

+0

+1 grande référence –

+0

Est-ce que le navigateur IE uniquement ne prend pas en charge l'application/xhtml + xml, et ne supporte pas la version application/xhtml + xml, IE 7, 8? ou seulement IE6 ne supporte pas –

+0

Aucune version de IE ne le supporte: http://en.wikipedia.org/wiki/Internet_Explorer#Features – Javier

0

XHTML est constitué de tous les éléments de HTML 4.01, combinés avec la syntaxe stricte de XML.

+0

Quel est l'avantage pratique de la "syntaxe stricte de XML"? –

+2

Aucun, vraiment. Cela vous oblige à écrire du code bien formé, mais si vous vous en souciez, vous pouvez le faire en HTML. Et si vous avez du contenu soumis par l'utilisateur, une balise sinalge malformée fera tomber toute votre page. – Javier

+0

Parce que les documents XHTML doivent être bien formés, ils peuvent être analysés en utilisant des parseurs XML standard - contrairement au HTML, qui nécessite un analyseur syntaxique HTML spécifique. –

1

XHTML est livré avec des règles de style par défaut (CSS), au moins dans une certaine mesure. Et aussi quelques règles de rendu strictes. Tout navigateur implémentant XHTML n'a pas beaucoup de marge de manœuvre pour présenter des choses, donc en créant un document XHTML, les développeurs peuvent trouver que leur document est identique dans la plupart des navigateurs (bien qu'il y ait quelques problèmes mineurs, surtout avec IE).

Au cours des dernières années, cela s'est considérablement amélioré, et la plupart des styles de documents XHTML se comportent de la même manière dans «tous» les navigateurs.

Vous avez peut-être également entendu parler du "mode standard" et du "mode bizarre". Le mode Quirks est quand (principalement IE) prend en compte toutes les mauvaises choses qu'il a faites dans les versions précédentes, et rend les pages comme il le faisait, de sorte qu'il rendra la façon dont il a été prévu ALORS. Le mode Standards est un mode strict, qui utilise uniquement des règles standardisées. Cela casse certaines pages plus anciennes, mais allège la charge pour de nombreux développeurs.

+0

Bien que XHTML n'ait pas beaucoup de marge de manœuvre pour présenter des choses, IE ne le rendra pas, donc le point est plus ou moins théorique. – Javier

+0

vous voulez dire le document HTML ne rend pas les styles de la même manière dans "tous" les navigateurs? –

+0

Bien sûr, ils ne le font pas. Peut-être un très simple, mais dans de nombreux cas, vous devrez tester contre différents navigateurs et ajuster le CSS et d'autres choses. IE est particulièrement original avec ceci. – Javier

Questions connexes