5568 sujets

Sémantique web et HTML

Voila j'ai fais un site, j'ai 76erreurs qui apparaissent au validateur W3C.
Je ne comprends pas certaines d'entre eux.

En voici une :

Line 22, Column 64: there is no attribute "type"

<li class="gauche1"><img src="./images/separateur.png" type="text/css"/></li>


You have used the attribute named above in your document, but the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute), or by using vendor proprietary extensions such as "marginheight" (this is usually fixed by using CSS to achieve the desired effect instead).

This error may also result if the element itself is not supported in the document type you are using, as an undefined element will have no supported attributes; in this case, see the element-undefined error message for further information.

How to fix: check the spelling and case of the element and attribute, (Remember XHTML is all lower-case) and/or check that they are both allowed in the chosen document type, and/or use CSS instead of this attribute. If you received this error when using the <embed> element to incorporate flash media in a Web page, see the FAQ item on valid flash.
Modifié par Viinz (27 Jun 2012 - 17:58)
Bonjour,

humm....enlève le type="text/css", c'est pour les feuilles de style, pas les images. mets donc un alt à la place, pour un texte alternatif à ton image.
Bonjour aussi...

En général les messages d'erreurs sont plutôt explicites ; au pire, il y a des version francophone du validateur.
Merci beaucoup.
Pour ceux qui cherche un validateur en francais : http://validator.progysm.com/

Sinon j'ai une erreur qui persiste, je ne sais pas quoi mettre, car il me faut un placeholder, mais il faut que je change le type, que dois-je mettre car il le type="text" ne va pas avec la placeholder

<input name="prenom" type="text" size="25" maxlength="30" placeholder="Pseudo"></div>
Bonjour,

L'attribut placeholder est apparu en HTML5. Il font donc que tu utilises un doctype HTML5 pour qu'il ne pose pas problème lors de la validation. Si tu souhaites conserver ton doctype HTML 4.01 ou XHTML 1.0, tu peux décider d'ignorer cette erreur.
Il n'y a pas un attribut comme placeholder qui est valide pour les codes qui ne sont pas en HTML 5 ?
Ok Smiley ohwell


<ul>

<li><div id="avatar" ><img src="./images/avatar.png" alt="avatar"/></div></li>

<li class="roolerdroite"><div id="roolerh1"><input name="prenom" type="text" size="25" maxlength="30" placeholder="Pseudo"/></div></li>

Erreur à la colonne 116: il n'y a pas d'attribut "placeholder"
(L'attribut n'existe pas pour cette balise.)

<li class="roolerdroite2"><div id="roolerh2"><input name="mdp" type="text" size="25" maxlength="30" placeholder="Mot de Passe"/></div></li>

<li><div id="btnlog"><a href="#">Ok</a></div><div id="checklog"><input type="checkbox"/>Se souvenir de moi</div><li>

Erreur à la colonne 117: type de document ne permet pas l'élément "li" ici; manque un de "ul", "ol", "menu", "dir" de l'étiquette de début
(Balise imbriquée au mauvais endroit selon la norme utilisée. Veuillez regarder les règles d'imbrication propre à cette balise.)

</ul>



Quelle est cette erreur ?
Modifié par Viinz (27 Jun 2012 - 20:47)
Viinz a écrit :
Bon ben je n'ai plus que l'erreur de placeholder Smiley decu

Même si tu déclares ta page en HTML4 ou XHTML1, les navigateurs qui implémentent @placeholder en HTML vont continuer à le prendre en compte, et ceux qui ne l'implémentent pas vont continuer à l'ignorer. Tu peux donc ignorer cette erreur de validation qui n'a pas de conséquence sur le fonctionnement (ou le non-fonctionnement, dans certains navigateurs) de ton code.

Cependant, pour des questions d'accessibilité et de simple compatibilité, je te conseillerais quand même d'avoir des labels explicites pour tes éléments de formulaire, plutôt que juste des aides à la saisie (attribut @placeholder). Il me semble que la spec HTML5 dit clairement que @placeholder est une information complémentaire (aide à la saisie, exemples) et pas l'information principale sur le rôle d'un champ de formulaire (pour ça on a l'élément LABEL).
C'est pas forcément évident car ça implique de revoir un peu la mise en page de ton formulaire. Mais c'est sans doute la solution la plus propre pour atteindre un bon niveau de qualité. C'est toi qui vois...
J'ai remis mon site en HTML5 et CSS3, tout est bon sauf un warning sur le HTML5

Info Using experimental feature: HTML5 Conformance Checker.

The validator checked your document with an experimental feature: HTML5 Conformance Checker. This feature has been made available for your convenience, but be aware that it may be unreliable, or not perfectly up to date with the latest development of some cutting-edge technologies. If you find any issues with this feature, please report them. Thank you.



J'ai mis en haut de ma page : <!DOCTYPE html>
<html lang="fr">

Le problème vient-il de là ?
Viinz a écrit :
Le problème vient-il de là ?

Hein? Qui te dit qu'il y a un problème?
Quelle partie de l'avertissement n'est pas claire?

Si c'est l'anglais que tu comprends mal, l'avertissement dit en substance: on a utilisé un validateur HTML5 expérimental, il peut donc avoir des bugs ou ne pas être à jour par rapport aux derniers développements d'HTML5.
Modifié par fvsch (29 Jun 2012 - 09:57)