5568 sujets

Sémantique web et HTML

Bonjour,

Je rencontre des difficultés à la validation.

J'ai utilisé le doctype :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

et

<script type="text/javascript" >  </script>

et j'essaie d'insérer un petit script javascript, hors j'ai une erreur à la validation ?

Ne peut-on pas utiliser cette balise avec le xhtml strict ?! Smiley bawling
logiquement si, suffit de savoir ce qui cloche ... que mets-tu dans le script ? ou plutôt, quelle est l'erreur retournée par le validateur ?
Salut,

Utilise cette syntaxe pour tes scripts, ça aura bien mieux je pense :

<script type="text/javascript">
	//<![CDATA[
			...
	//]]>
</script>
salut 20cent et Malcolm,
j'ai fait l'essai mais la modif ne suffisait pas.

En fait, du coup j'ai fait un mini fichier :
<!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">


<!-- Date de création: 13/11/2006 -->
<head> 
	
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
  <title>essai javascript</title>
  <meta name="description" content="" />
  <meta name="keywords" content="" />
  <meta name="author" content="eebee" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <meta http-equiv="Content-Language" content="fr" />
		
</head>
<body> 


	 <div id="menu">
	  <ul>
	    <li><a href="#" title="à developper">Parcours</a></li>
	    <!-- <li><a href="tutu@orange.fr" title="contacter le webmaster">Contact</a></li> --> 
		<!--  cryptage de l'adresse e-mail pour que les robots ne la relèvent  -->	
	   <script type="text/javascript" > 
	   		//<![CDATA[	
 				var identifiant = 'tutu';
				var domaine = 'orange.fr';
			 	document.write('<li>');
			 	document.write('<a href=\"mailto:' + identifiant + '@' + domaine +'\">' + 'Contact </a>' );
				document.write('</li>');
			//]]>	
		</script>
		
	  </ul> 
	 </div> <!-- fin menu -->	
 
	

</body>
</html>


et vous pourrez voir les erreurs que j'avais.

Du coup , j'ai sorti <li> et </li> du code javascript et maintenant ça marche.

Qu'en pensez vous. Que pensez vous de l'intérêt de ce script (trouvé quelque part je ne sais plus où) ?

D'autre part, à quoi sert ?
//<![CDATA[ ... //]]>

j'aime bien savoir à quoi sert ce que j'utilise.

Merci pour tout. Smiley biggrin
Modifié par eebee (19 Jan 2007 - 18:18)
Bonjour,

le problème vient du fait que ton élément UL contient un élément SCRIPT.

Or, comme c'est précisé dans la recommandation du W3C ( http://www.w3.org/TR/html401/struct/lists.html#h-10.2 ), un élément UL ne peut contenir que des éléments LI.

Donc, je te conseille d'écrire ta liste ainsi :

<ul>
     <li><a href="#" title="à développer">Parcours</a></li>
     <li><a href="#" title="contacter le webmaster" id="adresseMail"> Contact</a></li>
</ul> 


Puis de coder un script dans le HEAD de ton document qui appelle le lien désiré avec : document.getElementById('adresseMail')
Puis qui transforme le contenu de l'attribut href en ce que tu veux grâce à : setAttribute('href','mailto:' + identifiant + '@' + domaine)

J'espère t'avoir éclairé.