L’autre jour je lisais un article très intéressant qui indiquait que seuls 4% des sites actuels contiennent au moins une page validée par l’une des DTD du W3C. Ce constat, que certains estimeront comme affligeant, ne fait que renforcer mon sceptissisme vis à vis de la validation des site par rapport aux normes du W3C.
Comprenez moi bien, je n’ai rien contre les normes du W3C au contraire en tant que développeur professionel, j’estime que cela est un pré-requis pour celui qui désire en faire son métier, mais cela ne m’empêche pas de penser que valider un site et s’en féliciter est inutile!
Pour quelqu’un qui n’en manque pas une pour indiquer le manque de respect de ces même normes par IE6, cette prise de position peut paraître schizophrénique mais en y réfléchissant un peu vous arriverez, sans doute, à la même conclusion que moi.
“Il est un droit inaliénable à tout amateur de coder comme un porc son site perso”
Ce n’est pas de moi mais de Salagir. Et je suis d’accord en tout point avec chacun des mots utilisés dans cette phrase. Oui j’entends d’ici ceux d’entre vous qui trouveront cela scandaleux, lamentable et stupide. Mais on ne peut pas demander à un footballeur occasionnel, de nous offrir un spectacle du niveau de la Champion’s League. Oui, probablement son site sera moche, mais rien n’est sure. Et oui, il ne suivra que sporadiquement les recommandations du W3C. Mais de cela, réellement, on s’en fout!! Le plus important est que le contenu proposé soit accessible sur son site. Pour ce qui est du suivi des recommandations, que les orthodoxes et autres puristes se plaignent, je trouve cela inutile et, à la limite contre-productif.
Il est un devoir pour tout développeur professionnel de coder “au mieux” son site.
Qu’entends-je par “au mieux” ? Le terme est suffisamment vague pour inclure les recommandations du W3C mais pas seulement. Si Gmail, Facebook, Youtube, se devaient de suivre à la lettre le W3C, vous seriez incapable de les utiliser comme vous le faite aujourd’hui et ce, quelque soit votre navigateur!! Si les développeurs avaient du attendre les recommandations du W3C pour pouvoir “jouer” avec l’Ajax, le CSS, la balise canvas
, et que sais-je encore, ces techniques n’auraient sans doute pas vu le jour ou ne connaitraient pas le succès qu’elles ont aujourd’hui. C’est parce que, à un moment, un certain nombre de développeurs se sont détournés des règles établies que de nouvelles normes ont pu voir le jour. Dans ce sens, les recommandations du W3C ne servent qu’à valider l’évolution des technologies web à un instant précis beaucoup plus que votre site individuel, aussi joli soit-il.
De fait, intrinsèquement, quelque soit les recommandations du W3C, celle-ci seront toujours en retard avec les habitudes de codages. Oui, le HTML5 aussi beau et inventif soit-il, comblera sans aucun doute un vide “juridique” important, mais celui-ci possède déjà en lui, une part de recommandations obsolètes et/ou inadéquates qui continuera à faire pâle figure sous certains aspects façe à d’autres technologies plus propriétaires comme Flash ou son concurrent Silverlight.
Valider son site. Pour qui, pourquoi ?
Est-ce à dire pour autant comme l’indique le titre de mon poste qu’il ne sert à rien de valider son site ? Si vous pensez que la validation de votre site servira à autre chose qu’à faire croire à des compétences accrues lors d’un entretien d’embauche, faites-le. Mais n’oubliez jamais que valider votre site ne l’empêchera pas d’être mal structuré, inaccessible aux malvoyants etc…
Valider un site ne sert, in fine, qu’à vérifier la syntaxe orthographique de ce dernier. Et, mise à part vous, votre conscience professionelle et votre navigateur, cela n’intéresse personne!! De nos jours, le réel enjeu est d’optimiser les relations entre HTML, CSS et javascript pour enrichir l’expérience du visiteur du votre site. Alors la prochaine fois, avant de valider votre site, demandez-vous pourquoi vous le faites et surtout si cela vaut réellement la peine d’être mentionné sur votre site avec l’icone qui fait bien.
Attention, pas confondre HTML et XHTML.
L’ancêtre HTML avait clairement été conçu de sorte à permettre les “erreurs”. Un code HTML 3.2 n’a donc pas à être validé ; d’ailleurs il n’y a pas de DTD.
A partir de HTML 4.01 le W3C a voulu mettre de l’ordre. Le langage devenait strict. Mais ça reste encore du HTML ; tu peux t’amuser à faire un truc qui valide pas si tu es un gros newbie du net.
Avec XHTML, le W3C a voulu simplifier l’écriture de parser de pages webs. HTML avec la syntaxe stricte du XML. Le XML ne supporte pas les erreurs ; les navigateurs n’affichent correctement les pages XHTML que parce qu’ils utilisent un moteur d’interprétation type HTML… Avec un parser XML classique, très peu de pages s’afficheraient. On peut considérer cela comme une erreur ; XML est conçu pour l’échange d’informations entre applications informatiques, mais pas pour être écrit directement. Et pourtant, que ce serait pratique pour quelques projets à-la-con d’avoir du XML à parser pour réécrire du XHTML, plutôt que de faire ça avec des expressions régulières (je parle d’expérience).
Comme c’est grandement pratique d’écrire du HTML à la main (je parle là aussi d’expérience), avec quelques écarts à la norme possibles par des navigateurs peu exigeants, le W3C a retourné sa veste et fini par sortir le HTML 5.0. L’interprétation du code HTML restera donc tordue pendant encore un certain Le temps que plus personne ne code son HTML à la main et utilise des outils adéquats.
Donc oui, fait ton goret en HTML si tu veux, mais si tu as choisi de faire du XHTML, tu t’obliges à faire des pages valides.
Beaucoup de forums ne répondent pas à tes questions du “pourquoi mon truc ne marche pas?” si ton html n’est pas valide.
Il reste qu’un code valide c’est déjà maximiser ses chances d’avoir quelque chose qui s’affiche bien sur tous les navigateurs.
Ensuite, vient le moment où on veut faire des petits trucs spécifiques et là, souvent on casse la validité.