5568 sujets

Sémantique web et HTML

Pages :
Hello, bj à tous !

Je viens poster mon premier message sur le forum officiel d'un site si respectueux ;) !

Mon site, www.jsand.net, est actuellement valide W3C en XHTML1.1 Strict.

Je me suis déjà fait tapé sur les doigts et je sais donc que je commet tout de même quelques erreurs, erreurs qui passent sous le nez du validator...

http://www.jsand.net
Déjà, pouvez-vous me confirmez que le fait d'être en xhtml1.1 STRICT est en soit impossible ... le mode strict de ce dernier n'existant pas ? Bien que le validator le reconnaisse.

Aussi, doit-je remplacer mon <html> par <html xmlns="http://www.w3.org/1999/xhtml"> ?

Mon doctype est-il valable (en remplacant Strict par Transionnal si ce que j'ai demandé au dessus est vérifié) ?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Strict//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

Qu'en est-t-il des target="_blank" ? Le validator ne me faisant aucune remarque. Si il n'est pas autorisé, comment alors dc ouvrir une nouvelle fenêtre (sans JS, pas cool pr le référencement) ? Autorisé seulement si on indique clairement que ce sera une nouvelle fenêtre ?

Enfin, aprés tout ceci, manque-t-il qqch à ma page pour être valide tout ce qu'il y a de plus réglo ?


Voilà, merci, mes pages étant validées je n'ai jamais pris le tps de vérifier tous ces points qui ne m'en empêche pas, mais le but c'est d'être correct pas de voir qu'on est validé :).

Merci !!

PS: Sibelius, 8 caractères minimum pr un mot de passe ça c'est jamais vu et c'est franchement contraignant ;)
Modifié le 06 Nov 2004 - 14:07
Administrateur
Juxener a écrit :
Merci Stephan Smiley winner !

Y'a eu un bug ou bien Smiley smile ?

Je pense que Stephan a cliqué sur Smiley citer au-lieu de "répondre"
Juxener a écrit :
Merci Stephan Smiley winner !

Y'a eu un bug ou bien Smiley smile ?


Ça fait plusieurs fois que je me fais prendre, au lieu d'editer mon post, j'envoie une citation de moi-même parce que je ne suis pas loggé! Smiley eyecrazy

<re-re-re-re-edit>
http://www.pompage.net/pompe/doctype/
</re-re-re-re-edit>
Modifié le 05 Nov 2004 - 20:45
OK, bon Raphael j'ai été sur ta page et j'ai suvuit ce shéma expliqué dessus :
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=ISO-8859-1" />


Sous Mozilla, aucun pb, par contre, sous IE voici ce qui s'affiche :

La page XML ne peut pas être affichée
Impossible d'afficher l'entrée XML en utilisant la feuille de style . Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement.


--------------------------------------------------------------------------------

L'entité de paramètre doit être définie avant son utilisation. Erreur de traitement de la ressource http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd. Ligne 85, Position 2

%xhtml-prefw-redecl.mod;
-^



Comment donc respecter les normes sans avoir ce pb ?
m'ci :)
Perso, j'utilise les déclarations suivantes :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="fr-ca" xml:lang="fr-ca" xmlns="http://www.w3.org/1999/xhtml">

  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <meta http-equiv="content-style-type" content="text/css" />
 


Je n'utilise pas la déclaration xml qui fait chavirer IE en mode "quirk"

<?xml version="1.0" encoding="utf-8"?>
Holala, pas très humain tout ça Smiley smile !

En fait, je me suis déjà documenter sur tout ça inutile de me balancer des liens à tout va Smiley cligne !

En venant demander ici, j'espèrais avoir un avis d'expérimenté !
Les régles c'est bien jolie, mais comme le disent justement ces liens c'est pas tjrs la solution non plus pour avoir un site visible par tous convenablement (ce qui est une principale préocupation de Alsa me semble-t-il). Les solutions bricolages ne sont elles aussi pas forcément convenables et surtout en masse et imprécises.

Bref, j'aimerais savoir ce que VOUS, experts pensez de tout cela !

De votre exprérience, qu'en avez-vous tiré, quel compromis entre les régles W3C et les compatibilités avez-vous trouvé ? Quel doctype, <xml ... > ou pas, <html ...... > ou pas, etc.

Voilà, un forum c'est fait pour ça non, sinon y'a Google ^^ !


merci Smiley hippy
Administrateur
Ce que j'en pense ? C'est tout bête (même si ce sera bien mieux expliqué et plus détaillé dans les liens) :
A l'heure actuelle, tous les sites XHTML (enfin 99.9%) ne sont en fait que du ... HTML. Tout simplement parce que du "vrai" XHTML doit être déclaré en "application/xml". Or IE ne reconnaît pas cette syntaxe donc tout le monde utilise un content text/html. Bref c'est faux et personne ou presque ne fait de XHTML.

EDIT : pour ce qui est du prologue XML, il est obligatoire uniquement dans ces cas là :
* le document est traité en tant qu'XML ;
* que rien n'est spécifié au niveau serveur ;
* et que l'encodage n'est pas en utf-8 ou en utf16.

Donc dans ton cas il devrait être obligatoire
Tu es trop rapide Raphael :p !
J'ai effectivement vu et je t'ai même copié-collé celle de XHTML1.1 que j'ai testé et qui m'a généré un bug sous IE........ :)

Bon, j'ai dc qq réponses mais une autre questions : pourquoi n'utilisez-vous pas XHTML1.1 ? mais 1.0

:)
J'ai finalement suivit ce qu'avait fait Alsa et voilà que le validator me renvoit des erreurs Smiley eyecrazy !

Alors que je n'en avait aucune avant :(........

#

Line 38, column 17: there is no attribute "language"

<script language="JavaScript" type="text/javascript" src="jsand.js"></script>

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.

&#9993;
#

Line 44, column 60: there is no attribute "name"

<form method="post" action="javascript:jsand_search()" name="formSearch" id="formSearch">

&#9993;
#

Line 46, column 140: document type does not allow element "a" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

...style="margin-left: 200px" class="mh">Accueil</a> - <a href="indexlivredor.wj

The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.

One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").

&#9993;
#

Line 46, column 153: character data is not allowed here

...-left: 200px" class="mh">Accueil</a> - <a href="indexlivredor.wju" class="mh"

You have used character data somewhere it is not permitted to appear. Mistakes that can cause this error include putting text directly in the body of the document without wrapping it in a container element (such as a <p>aragraph</p>) or forgetting to quote an attribute value (where characters such as "%" and "/" are common, but cannot appear without surrounding quotes).

&#9993;
#

Line 46, column 193: document type does not allow element "a" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

...a href="indexlivredor.wju" class="mh">Livre d'or</a> - <a href="http://www.Ct

&#9993;
#

Line 46, column 209: character data is not allowed here

...redor.wju" class="mh">Livre d'or</a> - <a href="http://www.CtrlAltSuppr.com/"

&#9993;
#

Line 46, column 257: there is no attribute "target"

...http://www.CtrlAltSuppr.com/" target="_blank" class="mh2">Forums</a><br />

&#9993;
#

Line 46, column 277: document type does not allow element "a" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

...ppr.com/" target="_blank" class="mh2">Forums</a><br />

&#9993;
#

Line 46, column 293: document type does not allow element "br" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

...="_blank" class="mh2">Forums</a><br />

&#9993;
#

Line 167, column 104: document type does not allow element "input" here; missing one of "p", "h1", "h2", "h3", "h4", "h5", "h6", "div", "pre", "address", "fieldset", "ins", "del" start-tag

...en" name="news" style="width: 30px" /></form>



Ces erreurs sont justifiées ?
Pourquoi en 1.1 il ne me les indiquaient pas ?

m'ci :)
Modifié le 05 Nov 2004 - 21:51
Administrateur
Juxener a écrit :

Ces erreurs sont justifiées ?
Pourquoi en 1.1 il ne me les indiquaient pas ?

Oui elles sont justifiées et il ne les indiquait pas parce que ta page était interprêtée en HTML je présume.

1- Line 38, column 17: there is no attribute "language"
>> "language" est une propriété obsolète. A remplacer par type="text/javascript"

2- Line 44, column 60: there is no attribute "name"
>> "name" n'existe plus non-plus sauf sur la balise <input>

3- Line 46, column 140: document type does not allow element "a" here;
>> Tu dois avoir ton <a> (balise inline) directement dans ton body je suppose

4- Line 46, column 153: character data is not allowed here
>> Idem, je suppose que ce caractère est directement enfant du body

5- Line 46, column 257: there is no attribute "target"
>> Target n'existe pas en Strict (voir lien au début du sujet)

6- Line 167, column 104: document type does not allow element "input" here;
>> Tu as dû mettre un <input> (balise inline) directement dans un <form>, ce n'est pas autorisé : http://www.alsacreations.com/blog/index.php?2004/09/09/58-parents-et-enfants

EDIT pour "name" :

W3C a écrit :
HTML 4 a défini l'attribut name pour les éléments a, applet, form, frame, iframe, img, and map. HTML 4 a également introduit l'attribut id. Ces deux attributs ont été conçus pour être utilisés comme des identificateurs partiels. [...]
Notez qu'en XHTML 1.0, l'attribut name de ces éléments est formellement abandonné, et il sera éliminé dans les versions suivantes de XHTML.

--> http://www.la-grange.net/w3c/xhtml1/
Raphael a écrit :
Oui elles sont justifiées et il ne les indiquait pas parce que ta page était interprêtée en HTML je présume.

Ok :) !

a écrit :
1- Line 38, column 17: there is no attribute "language"
>> "language" est une propriété obsolète. A remplacer par type="text/javascript"

Ok, j'avais connaissance de l'obligation du type mais pas de l'interdiction du language.

a écrit :
2- Line 44, column 60: there is no attribute "name"
>> "name" n'existe plus non-plus sauf sur la balise <input>

Aïe, ça va pas être simple ça pour les scripts JS (le W3C complique c dingue :()

a écrit :
3- Line 46, column 140: document type does not allow element "a" here;
>> Tu dois avoir ton <a> (balise inline) directement dans ton body je suppose

Comment ça ? Même pas, il y a des <div> autour... y'a un truc que j'ai pas compris ?

a écrit :
4- Line 46, column 153: character data is not allowed here
>> Idem, je suppose que ce caractère est directement enfant du body

Béh non, dans des div aussi..... c'est pas qu'il faut une entité html ?

a écrit :
5- Line 46, column 257: there is no attribute "target"
>> Target n'existe pas en Strict (voir lien au début du sujet)

Ok, ok :(

a écrit :
6- Line 167, column 104: document type does not allow element "input" here;
>> Tu as dû mettre un <input> (balise inline) directement dans un <form>, ce n'est pas autorisé : http://www.alsacreations.com/blog/index.php?2004/09/09/58-parents-et-enfants

Ok, j'avais déjà vu ton lien, mais ça ne me dit pas comment donc faire ?
Les form sont fait pour accueillir des input.... comment ça marche alors ?

Merci de ta patience :) !
Administrateur
a écrit :
Aïe, ça va pas être simple ça pour les scripts JS (le W3C complique c dingue :()

Tu es sûr d'avoir un intérêt en JS à attribuer un name aux éléments a, applet, form, frame, iframe, img, and map ?
Un getElementById fonctionne très bien aussi. Pour ce qui est des formulaires et de la récupération des données, "name" est autorisé sur les <input>

a écrit :
Comment ça ? Même pas, il y a des <div> autour... y'a un truc que j'ai pas compris ?

<a> est autorisé dans une balise bloc. Tu peux remettre le lien vers la validation, pour voir le code ?

a écrit :
Ok, j'avais déjà vu ton lien, mais ça ne me dit pas comment donc faire ?
Les form sont fait pour accueillir des input.... comment ça marche alors ?

Ils ne peuvent pas être parents direct, donc rien ne t'empêche qu'ils soient des ancètres indirects Smiley cligne
Pages :