Quels sont les avantages et les inconvénients (le cas échéant) de s'assurer que toutes les pages sont validées par rapport à un code HTML non valide qui fonctionne toutefois sur tous les principaux navigateurs?
En outre, le fait d'avoir du code HTML valide après l'exécution de Javascript est-il aussi important?
javascript
html
validation
Thomas Bonini
la source
la source
Réponses:
Je pense que cela en vaut vraiment la peine , mais vous ne devriez jamais être un esclave de la validation - c'est un jeu de fou.
http://www.codinghorror.com/blog/2009/03/html-validation-does-it-matter.html
Validez votre HTML. Sachez ce que signifie avoir un balisage HTML valide. Comprendre l'outillage. Plus d'informations sont toujours meilleures que moins d'informations. Pourquoi voler à l'aveugle?
Personne ne se soucie de savoir si votre code HTML est valide. Excepté toi. Si tu veux. Ne croyez pas un instant que produire du code HTML parfaitement valide est plus important que de faire fonctionner votre site Web, de fournir des fonctionnalités qui enchantent vos utilisateurs ou d'accomplir votre travail.
la source
Je considère le HTML valide comme un objectif louable, mais je ne le vois pas comme le but ultime de la création de bons sites Web.
Le truc, c'est que votre balisage peut être parfaitement valide, mais il peut ne pas être sémantique - par exemple, en utilisant des tableaux pour la mise en page ou la navigation. Il y a une différence entre un code valide et un code sémantique.
Sur une autre note, si vous utilisez de la publicité ou des scripts externes, ils peuvent insérer leur propre balisage, ce qui peut vraiment gâcher le vôtre.
la source
Je pense que cela en vaut la peine, car j'ai corrigé de nombreuses erreurs de balisage et de logique en recherchant une validation. C'est l'une de ces choses "nécessaires mais pas suffisantes". Un balisage valide, comme un code qui compile (ou extrait via JSlint) sans erreurs, avertissements et astuces, est une bonne première étape pour bien faire les choses.
la source
Le gros avantage du code HTML valide est que votre page est alors plus accessible aux éléments autres que les "principaux navigateurs". Tous les "principaux navigateurs" ont des solutions de contournement sans fin pour traiter tous les fichiers indésirables invalides qui peuplent le WWW. Cependant, s’en tenir au code HTML valide aide, par exemple, si une personne utilise un navigateur pour les malvoyants, ou accède à vos pages hors ligne, etc.
la source
La validation en elle-même n'est pas si critique, car peu de navigateurs sont 100% conformes et les spécifications ne sont pas claires sur la façon d'interpréter les règles.
Cependant, être valide, le HTML vous positionne mieux pour adapter et améliorer votre site. Au fur et à mesure que les normes évoluent, elles migrent généralement vers l'avant et si votre nouveau site est valide, la mise à jour pour prendre en charge la dernière version devrait être plus facile.
En bas, être valide permet de rester au top de la forme et d’être aussi compatible que possible avec le plus large public.
la source
La meilleure approche consiste à savoir quel code HTML non valide est incorrect et quel code HTML non valide importe peu.
Par exemple, oublier de fermer une
<div>
balise est très mauvais , car votre mise en page va certainement bousiller dans un ou plusieurs navigateurs.Cependant, l’utilisation
<br>
au lieu de<br />
XHTML n’importe pas - tous les navigateurs interpréteront les deux comme un saut de ligne sans problème. L'utilisation de l'target
attribut sur les liens n'est pas valide, mais le pire des cas est que le navigateur n'ouvre pas le lien dans une nouvelle fenêtre.la source
target
est valide en XHTML de transition, et seuls les masochistes utilisent strict. L'omission de la barre oblique fermante rendra votre page XML non valide, ce qui risquerait de créer de la confusion pour les séparateurs d'écran. Si vous choisissez d'utiliser XHTML, votre page doit être au moins valide en XML.Lors de l'exécution du validateur, vous devez examiner les erreurs qu'il vous produit cas par cas. La validation est-elle importante? Pour moi, oui, c'est très important. Mais est-ce une exigence? Non.
Des choses comme utiliser le même ID plusieurs fois (au lieu d'une classe), placer des éléments de niveau bloc dans des éléments de niveau ligne (généralement, ces éléments ne correspondent pas non plus de manière sémantique), des attributs alt manquants sur les images (accessibilité médiocre pour les personnes ayant une déficience ), sont tous importants. Des choses comme les attributs inconnus sur les tags ne sont PAS importants. Du tout. Les frameworks Javascript tels que Dojo ou cette horrible barre de réseaux sociaux Meebo utilisent des attributs personnalisés comme crochets, et la spécification HTML indique que ceux-ci sont autorisés et que tout attribut inconnu doit être ignoré. Le validateur ne les ignore pas, cependant, il génère des erreurs. Ces erreurs peuvent être ignorées.
Lors de la validation, ne supposez pas simplement que si vous avez des erreurs, vous le faites mal. La sémantique est beaucoup plus importante et il se trouve que le code HTML valide est plus souvent que pas le résultat naturel d'une sémantique correcte.
la source
Une des raisons pour tester votre site pour le code HTML valide est qu’il garantit que les robots des moteurs de recherche seront en mesure d’indexer et de déterminer la signification de vos pages. S'ils ne peuvent pas le faire en raison d'un code HTML mal formé (que les principaux navigateurs peuvent utiliser pour des raisons historiques), vous risquez de limiter le classement de votre moteur de recherche.
Il a également été spéculé sur le fait que, si les principaux moteurs de recherche gèrent correctement le code HTML malformé, ils pourraient également attribuer des "points" de qualité à la qualité de la page, ce qui affecterait davantage votre capacité à obtenir le classement que votre contenu mérite.
la source
Je ne pense vraiment plus que ça compte. J'étais un esclave de la validation, maintenant je la vérifie rarement. Peut-être me suis-je épuisé de m'assurer que mon site est valide, ou peut-être que je m'en foutais plus parce que personne d'autre ne le ferait. Je peux vous garantir que 99,9% de nos visiteurs ne savent même pas ce que c'est et se moquent d'eux. Le logiciel de navigation de demain pourrait peut-être, mais quand ce jour viendra, je m'en inquiéterai alors
la source
La validation est utile car elle peut vous aider à détecter certaines erreurs difficiles à détecter telles que
comportement imprévisible du navigateur (par exemple, l’insertion d’éléments de bloc dans un
a
fichier peut parfois casser de manière laide dans Firefox).la source
Personne n'a encore mentionné le fait qu'un code HTML non valide peut entraîner des temps de rendu plus lents lorsque le navigateur tente de comprendre le code HTML non standard lors de l'affichage.
la source
il n'y a pas d'inconvénient à avoir du code HTML valide. Il y a une raison pour laquelle il existe une spécification en premier lieu et pourquoi beaucoup d'efforts sont déployés dans la spécification pour définir comment les choses devraient fonctionner.
En gros, tout ce que vous gagnez est de répondre aux spécifications. ce qui signifie que les programmes écrits pour lire le code HTML (navigateurs, bots) ne peuvent pas vous reprocher de ne pas respecter les spécifications en cas de problème. et certains de ces programmes vous donnent des extrapoints (meilleur classement dans les moteurs de recherche si le bot indique "respecte les spécifications"). Si vous répondez aux spécifications, vous serez moins pris au dépourvu si certains navigateurs ne rendent pas le code HTML défectueux comme vous le pensez.
alors, répondre aux spécifications et écrire du code HTML valide est bon pour vous, sans aucun inconvénient.
la source
Certaines erreurs de validation HTML peuvent entraîner des problèmes de mise en page non évidents (par exemple, des balises imbriquées / non correctement fouillées), des bugs JavaScript (par exemple, l'utilisation de
id
plusieurs fois) et des problèmes pour certains utilisateurs (par exemple, l'inclusion d'unalt
attribut significatif ou vide dans les images).Si toutes nos pages sont validées, c’est une vérification automatique intéressante que vous pouvez effectuer pour éliminer les sources d’erreurs. Si vous laissez des erreurs de validation parce que vous savez qu'elles ne causent aucun préjudice, votre vérification n'est plus automatisée: vous devez examiner chaque erreur et vous rappeler que tout va bien. Personnellement, je le préfère lorsque les ordinateurs réduisent la quantité de travail que je dois faire plutôt que de l’augmenter.
la source
Un point dont personne n'a parlé est les développements futurs du navigateur. Bien que tous les navigateurs actuels gèrent relativement bien les balises non valides, ce n'est peut-être pas toujours le cas.
À l'avenir, les fabricants de navigateurs veilleront à ce que leurs navigateurs respectent les normes HTML / XHTML. C'est donc ce que les développeurs Web devraient viser également. Le fait qu’un bit de balisage non valide fonctionne maintenant ne garantit pas son efficacité dans les futurs navigateurs.
la source
<font>
tag ou de son équivalent.La validité vous aide à éviter les incompatibilités et à maintenir le code maintenable. Les navigateurs récupèrent les erreurs de marquage, mais parfois de manière très peu intuitive.
Basé sur la DTD (HTML4, XHTML1 @ W3C) - Ne vaut peut-être pas la peine. La DTD est primitive et ne peut par exemple pas vérifier la validité de la plupart des attributs. Vous aurez surtout du mal à comprendre les erreurs concernant les entités et l’imbrication.
Validateur HTML5 - Oui . Absolument. HTML5 est plus pragmatique et permet certaines constructions inoffensives qui étaient autrefois des erreurs. Le validateur d'OTOH Henri est beaucoup plus complet et mieux à même de découvrir de vrais problèmes.
La validité du code généré par JS peut avoir son importance, car les navigateurs fonctionnent sous DOM, quelle que soit la manière dont il a été créé. Si vous utilisez
document.write()
, alors vous devez même vous assurer que la syntaxe est correcte (il utilise le même analyseur que la source de la page).la source
Même si votre code HTML fonctionne sur tous les principaux navigateurs, cela vaut la peine, car cela peut parfois causer des problèmes avec les robots d'exploration des moteurs de recherche tels que googlebot. Par exemple voir ceci:
http://www.codeproject.com/KB/server-management/Google_Indexing_Problem.aspx
la source
Google et Bing n’utilisent pas, n’ont jamais utilisé et n’utiliseront jamais la validation CSS ou HTML comme facteur de classement.
La majorité des sites Web contiennent des dizaines à des centaines d'erreurs et vous n'avez pas à vous en soucier, car tous les moteurs de recherche se préoccupent de la façon dont la page est rendue. Assurez-vous simplement que votre site Web s'affiche correctement dans tous les principaux navigateurs et Fetch de Google .
la source