Probleme validation w3c

Eléphant du PHP | 440 Messages

12 févr. 2009, 18:30

Bonjour je voudrait valider ma page au w3c

Code : Tout sélectionner

<!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" lang="fr"> <head> <title>Service réclamation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Language" content="fr" /> <script type="text/javascript" src="javascript/action_menu.js"> </script> <script type="text/javascript" src="javascript/fonction.divers.js"> </script> <script type="text/javascript" src="javascript/fonction.reclamation.js"> </script> <link rel="stylesheet" type="text/css" href="css/site.css" media="screen" /> <link rel="stylesheet" type="text/css" href="css/recap.css" media="screen" /> </head> <body> <div id="conteneur"> <h1 id="header"><a href="etape1.html" title="Colored Design - Accueil"></a></h1> <dl id="menu"> <dt onclick="javascript:montre('smenu0');"><a href="index.php" title="">Accueil</a></dt> <dt onclick="javascript:montre('smenu1');"><a href="reclamation.php">Rèclamation</a></dt> <dt onclick="javascript:montre('smenu2');">Action Immédiate</dt> <dd id="smenu2"> <ul> <li><a href="action_immediate.php">Action Immédiate</a></li> <li><a href="validation_retour.php">validation_retour</a></li> </ul> </dd> <dt onclick="javascript:montre('smenu3');">Evaluation réclamation</dt> <dd id="smenu3"> <ul> <li><a href="evaluation_reclamation.php">Evaluation Réclamation</a></li> <li><a href="maj_evaluation_reclamation.php">Maj Evaluation Réclamation</a></li> <li><a href="maj_fac.php">Action Corrective</a></li> </ul> </dd> <dt onclick="javascript:montre('smenu4');">Recap</dt> <dd id="smenu4"> <ul> <li><a href="recap.php">Recap par Client</a></li> <li><a href="recla_par_fac.php">Reclamation / Fac</a> </li><li><a href="recap_semaine.php">Recap Période</a></li> <!--<li><a href="recap_graph1.php">Recap Graph</a></li>--> <li><a href="recap_avoir.php">Recap Avoir</a></li> <li><a href="recap_gratuite.php">Recap Gratuité</a></li> <li><a href="recap_retour.php">Recap retour</a></li> </ul> </dd> </dl> <div id="contenu"> <h2>Un titre</h2> <form action="reclamation1.php" method="post" id="reclamation" > Veuillez rentrer le code client: <br /> <input type="text" name="code_client" id="code_client" value="" maxlength="11" onkeyup="go()" /> <br /> Ou bien veuillez indiquer le code Postal:<br /> <input type="text" name="cb_client" id="cb_client" value="" maxlength="11" onkeyup="cb_client()" /> <br /> <input type="submit" name="re_valider" id="re_valider" value="Valider" /> </form> <div id="information"></div> <br /> <div id="historique" style="display: none"></div> </div> <p id="footer">Essai pour le service Qualité section reclamation cliente</p> </div> </body> </html>
Mais il retourne 8 erreurs:

exemple:

Code : Tout sélectionner

Line 67, Column 46: 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.
je ne comprend pas pourquoi je pense avoir commis une erreur au niveau du form mais je ne voit pas la quel.

Si quelqu'un pourrait m'aiguiller je suis preneur.

Merci

guigui69

Mammouth du PHP | 2937 Messages

12 févr. 2009, 20:03

En mode strict (que ce soit en HTML 4.01 ou en XHTML 1.0), les éléments BODY et FORM ne peuvent pas avoir pour enfant un élément de type en ligne (inline en anglais), comme BR.

Autrement dit, pour le code du formulaire :

Code : Tout sélectionner

<form action="reclamation1.php" method="post" id="reclamation" > <p><label for="code_client">Veuillez rentrer le code client:</label></p> <p><input type="text" name="code_client" id="code_client" value="" maxlength="11" onkeyup="go()" /></p> <p><label for="cb_client">Ou bien veuillez indiquer le code Postal:</label></p> <p><input type="text" name="cb_client" id="cb_client" value="" maxlength="11" onkeyup="cb_client()" /></p> <p><input type="submit" name="re_valider" id="re_valider" value="Valider" /></p> </form>
C'est déjà plus propre que d'insérer des BR. Soit dit en passant, j'en ai profité pour encadrer les intitulés des champs de balises LABEL : le formulaire sera plus accessible à quiconque clique sur ces intitulés (sans oublier les aides techniques, qui pourront savoir clairement à quel champ correspond chaque intitulé). ;)