OVH Cloud OVH Cloud

Quel est différence entre ces deux tag ?

8 réponses
Avatar
[Bruno]
Bonjour à tous et bonne année 2005 ; santé, bonheur et prospérité.


Quel est différence entre ces deux tag ?


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">


Et question qui en découle ; quel est l’intérêt de rajouter cette argument ?

8 réponses

Avatar
Pascal Chevrel
Le 05/01/2005 15:11, Bobe a ecrit :
Pascal Chevrel nous a dit le 05/01/2005 14:55:


Le navigateur ne charge pas la DTD sur le serveur, il a tout
simplement une liste de DTD pré-enregistrées à laquelle il compare la
DTD de ta page. Vu que ceux qui font du HTML sont en général des
grosses feignasses (moi le premier), ils se sont dit "pourquoi mettre
l'url complète? de toute manière je sais même pas à quoi ça sert et
comme ça j'économise 50 octets !" ;)




Mhh, n'est-ce pas plutôt que l'URL pointant sur la DTD serait
facultative dans le cas des doctypes dit 'PUBLIC' ? Un connaisseur dans
la salle ?




Non, et je suis un connaisseur :p

http://www.w3.org/QA/2002/04/valid-dtd-list.html

Pascal

--
Pascal Chevrel - Mozilla Champion
FAQ Mozilla/Netscape en français : http://www.chevrel.org/fr/faq/
Forums SOS online.net: http://forums.chevrelbureau.com/
Avatar
CrazyCat
[Bruno] wrote:
Sergio a écrit :
.../...
L'une est plus valide que l'autre. Tu passes pour un "vrai programmeur"
avec la deuxième ;-).
.../...


Passer pour un "vrai programmeur" c'est flateur ! c'est au moins une
bonne raison ;-)



Ca évite surtout de te faire flamer quand tu demande un avis sur ton
site (même si tu demandes juste si les couleurs sont sympas) :)


--
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.c-p-f.net
Tout sur les eggdrops: http://www.c-p-f.org
Avatar
Bobe
Pascal Chevrel nous a dit le 05/01/2005 15:15:

Mhh, n'est-ce pas plutôt que l'URL pointant sur la DTD serait
facultative dans le cas des doctypes dit 'PUBLIC' ? Un connaisseur
dans la salle ?




Non, et je suis un connaisseur :p

http://www.w3.org/QA/2002/04/valid-dtd-list.html




Je vois une liste de DOCTYPES valides proposés par le W3C mais rien qui
dise que les DOCTYPE 'PUBLIC' sans URL vers le fichier .dtd ne sont pas
valides.

Tu noteras que les deux premiers DOCTYPE de la liste n'ont justement pas
cette URL vers leur DTD correspondante, bien que celles ci existent (le
document dont tu as donné l'URL fait d'ailleurs un lien vers celles-ci).

Par curiosité, j'ai tenté de valider un document HTML 4.01 strict avec
le doctype suivant:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">

... et le validateur du W3C valide bien le document en tant que "HTML
4.01 Strict".

--
Bobe (Aurélien Maille)
http://webnaute.net

"la vie d'un geek est un combat perpétuel contre l'imperfection"
Avatar
Peter Pan
Pascal Chevrel wrote:
Conclusion, les navigateurs comparent la DTD foireuse avec celles qu'ils
ont en stock et décident d'afficher selon les règles de cette DTD... ou
pas. Quand ils ne le font pas, ils passent dans un mode appelé "quirks"
ou "almost standard", au lieu de "standard compliant" (l'affichage des
infos sur la page abec Firefox/mozilla te dit quel mode il a choisi).



En effet : Firefox affiche en info un mode différent (soit : compatible
ou respect stricte des standards) bien que l'affichage soit identique ;
je suppose qu'en fonction des "erreurs" il y auraient des différences.

Je pensais que le doctype n'était utile qu'au validateur qui, c'est à
noter, au delà du coté hype "super je fais du beau code, je suis un
cador", n'affiche pas d'erreur en cas de doctype sans URL.

Bon, il me reste à constater les réelles répercussions sur un brouteur.
Inutile de préciser que le côté hype me passe au dessus de la souris :-)

--
Pierre
http://www.1966.fr/
Avatar
Sergio
Pascal Chevrel avait soumis l'idée :

(s'ils le faisaient tous, je te dis pas la charge du serveur du W3C...).



C'est bien ce que je me suis dit. Alors qui dit vrai dans l'histoire ? (cf.
liens donnés par Thibaut)



Le navigateur ne charge pas la DTD sur le serveur, il a tout simplement une
liste de DTD pré-enregistrées à laquelle il compare la DTD de ta page. Vu que
ceux qui font du HTML sont en général des grosses feignasses (moi le
premier), ils se sont dit "pourquoi mettre l'url complète? de toute manière
je sais même pas à quoi ça sert et comme ça j'économise 50 octets !" ;)

Conclusion, les navigateurs comparent la DTD foireuse avec celles qu'ils ont
en stock et décident d'afficher selon les règles de cette DTD... ou pas.
Quand ils ne le font pas, ils passent dans un mode appelé "quirks" ou "almost
standard", au lieu de "standard compliant" (l'affichage des infos sur la page
abec Firefox/mozilla te dit quel mode il a choisi).



Donc s'il n'y pas l'URL et s'il est intelligent, il devrait supposer
que c'est la standard, non ?

Par contre si je mets :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.monsite.com/normes/html4/ma-dtd.dtd">

Il devrait la lire, cette fois, non ? :-)

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
Sergio
Après mure réflexion, Pascal Chevrel a écrit :

Mhh, n'est-ce pas plutôt que l'URL pointant sur la DTD serait facultative
dans le cas des doctypes dit 'PUBLIC' ? Un connaisseur dans la salle ?



Non, et je suis un connaisseur :p

http://www.w3.org/QA/2002/04/valid-dtd-list.html



Et je vois en bas :
---------
Authoring tools MUST NOT use the following list.
HTML 4.0
http://www.w3.org/TR/1998/REC-html40-19980424/strict.dtd
http://www.w3.org/TR/1998/REC-html40-19980424/loose.dtd
http://www.w3.org/TR/1998/REC-html40-19980424/frameset.dtd
HTML 4.01
http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd
http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd
http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd
etc.

Ce qui veut dire (ces URL ne sont pas sorties du néant !) qu'un jour,
on a utilisé ces URL pour les DTD, et qu'il ne faut plus les utiliser,
et que demain, le W3C décidera que la dtd de HTML 4.01 stricte ne sera
plus à :
http://www.w3.org/TR/html4/strict.dtd

mais à :
http://dtd.w3.org/MACHIN/html401/strict.dtd

Il va falloir revoir tous les navigateurs, toutes les pages Web etc. !

Merci !

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
Patrick Mevzek
Le Wed, 05 Jan 2005 16:25:58 +0100, Sergio a écrit :

et que demain, le W3C décidera que la dtd de HTML 4.01 stricte ne sera plus
à :
http://www.w3.org/TR/html4/strict.dtd

mais à :
http://dtd.w3.org/MACHIN/html401/strict.dtd

Il va falloir revoir tous les navigateurs, toutes les pages Web etc. !



A priori le problème ne devrait pas se poser,
cf la Note du §7.2 sur http://www.w3.org/TR/html4/struct/global.html

--
Patrick Mevzek . . . . . . Dot and Co (Paris, France)
<http://www.dotandco.net/> <http://www.dotandco.com/>
Dépêches sur le nommage <news://news.dotandco.net/dotandco.info.news>
Avatar
Pierre Goiffon
Peter Pan wrote:
Je pensais que le doctype n'était utile qu'au validateur qui, c'est à
noter, au delà du coté hype "super je fais du beau code, je suis un
cador", n'affiche pas d'erreur en cas de doctype sans URL.



Essayez avec un MSIE sur une page avec une mise en page tout CSS
Vous prenez d'abord un doctype qui bascule en quirks, ensuite un doctype
qui le fait basculer en standards. Vous allez voir, le rendu ne sera pas
vraiment identique :)