5568 sujets

Sémantique web et HTML

bonjour,

Je suis content car j'ai pu déjà grâce à votre aide rendre mon site valide html 4.01 strict. Je suis maintenant en train de passer en xhtml 1.0 et là, je suis bloqué.

Le && dans :
NS6 = (DOM && !document.all) ? 1 : 0;

me donne l'erreur suivante dans le validateur : character "&" is the first character of a delimiter but occured as data.

Le & dans l'URL en javascript donne :
cannot generate system identifier for general entity "tt".

J'ai déjà essayé de faire suivre les "&" par amp; mais cela ne fonctionne pas dans un javascript. Quant au double &&, je ne sais plus quoi faire...

Merci d'avance...


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/dtD/xhtml1-strict.dtd">
<html>
<head>
<title> Le Golden Retriever </title>
<base href="http://localhost/site/">
<meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<link rel="stylesheet" type="text/css" href="style0.css">
<script type="text/javascript">
DOM = (document.getElementById) ? 1 : 0;
NS6 = (DOM && !document.all) ? 1 : 0;
self.onError=null;

function chg(lien) {
if (lien=="" || lien=="index") { window.location.href="index.php?lg=fr"; } 
else {
window.location.href="index.php?lg=fr&tt=yes&pagep="+lien;}
}
</script></head>

<body>

<div id="menucache">
<ul>
<li id="index"><a href="javascript:chg('index')">Accueil</a></li>
<li id="origines"><a href="javascript:chg('frorigines')">Origines</a></li>
<li id="standard"><a href="javascript:chg('frstandard')">Standard</a></li>
</ul>
</div>
</body>
</html>

Modifié par rollbich (13 Nov 2005 - 15:47)
Slt,

utilises une section CDATA dans <script/> :
<script type="text/javascript">
<![CDATA[
/* ici tu mets ton script avec tous les &, <, >, " et ' que tu veux, puisque les sections CDATA permettent d'introduire ces entités dans du XML sans avoir besoin de les échapper. */
]]>
</script>


a+
IL ne faut pas oublier de commenter les lignes introduisant le CDATA pour être sûr que ça ne provoque pas d'erreur.
J'avai trouvé il y a un certain temps une super astuce sur openweb pour mixer commenteire+CDATA, mais je ne retrouve pluss.
Sinon avec un bête commentaire HTML, ça marche aussi, sauf dans dans un cas (voir ci-dessous).

Pendant que je suis aux commentaires HTML, j'ai une question pourr les experts : pourquoi ne peut-on pas faire de décrémentation de variable (variable--;) à l'intérieur d'un commentaire HTML sans provoquer d'erreur au validator ?
QuentinC a écrit :
pourquoi ne peut-on pas faire de décrémentation de variable (variable--;) à l'intérieur d'un commentaire HTML sans provoquer d'erreur au validator ?


Parce que c'est le double tiret -- qui délimite les commentaires en HTML (et non le <!).
LD > Je suis vraiment désolé de polluer ce topic, mais j'aimerais en savoir plus. Que veux-tu dire par là ?
djfeat > Merci pour les liens.
Si j'ai bien compris, c'est à cause d'une "bêtise" historique datant du SGML.