salut à tous...

j'ai créé une page et j'ai (encore) un bug IE :


<html>
<head>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<style>
body
{
	cursor: default;
	background-color: #ffffff;
}
a.menulink
{
	color: #000000;
	width: 200px;
	border: solid 1px #5555ff;
	background: #ccccff;
	padding: 2px;
	padding-left: 10px;
	text-decoration: none;
	margin-bottom: 5px;
	display: block;
}
a.menulink:hover
{
	background-color: #ffffcc;
}
</style>
</head>
<body>

<a href="#" class="menulink">Plan d'acc&egrave;s</a>
<a href="#" class="menulink">Nous contacter</a>
<a href="#" class="menulink">L'album photo</a>
<a href="#" class="menulink">Les moniteurs</a>

</body>
</html>


Je ne sais pas comment corriger le bug.

merci d'avance
Is that a joke ?!? C'est ta blague de fin d'année ? t'as pas plus de détails car on va pas deviner quel est le bug...

voili voilou Smiley murf Smiley cligne Smiley cligne Smiley cligne
Ta DTD doit précéder l'élément <html>, et non pas se trouver dans le <head>...</head>

Et comme tu as choisi une DTD stricte, tes liens ne peuvent pas de trouver directement dans <body> : ils doivent être placés dans un élément bloc. Pour éviter ton bug au survol des liens, place chaque lien dans un élément bloc distinct (<p>, <div>, etc...). Ou si tu veux un code plus significatif, utilise une liste <ul> pour ton menu, avec chaque lien dans un <li> (et dans ce cas, revoir la CSS).
En l'occurence, the_penguin est effectivement confronté à un bug d'IE : en transitional, où la présence des <a> directement dans <body> est autorisée, le comportement au survol est également foireux.
Bonjour

N'empêche que ce n'est pas la première fois que la formule "bug d'IE" (encore) apparait dans le forum. Même si c'est bien le cas en l'occurrence, faudrait pas que ça tourne à l'habitude pour le plaisir. IE n'a pas le même model box que la plupart des autres navigateurs (mais le model box d'IE est jugé plus intuitif par pas mal de monde, semble-t-il), IE n'implémente pas toutes les propriétés css (mais aucun navigateur ne le fait, alors). Lancerait-on aussi allégrement des sujets "bug de FF"?
thierry a écrit :
Bonjour

N'empêche que ce n'est pas la première fois que la formule "bug d'IE" (encore) apparait dans le forum. Même si c'est bien le cas en l'occurrence, faudrait pas que ça tourne à l'habitude pour le plaisir. IE n'a pas le même model box que la plupart des autres navigateurs (mais le model box d'IE est jugé plus intuitif par pas mal de monde, semble-t-il), IE n'implémente pas toutes les propriétés css (mais aucun navigateur ne le fait, alors). Lancerait-on aussi allégrement des sujets "bug de FF"?


Bien dit Thierry. Je répète régulièrement que l'histoire des navigateurs est bien courte et que durant cette brève aventure IE a eu par moment beaucoup d'avance sur ses concurrents, pour ma part j'essais de ne pas employer de hacks pour contourner quelques limitations des différents navigateurs et cherche la plupart du temps à me débrouiller autrement, quitte à accepter une légère dégradation sur IE dans quelques rares cas.
Dans bien des situations les limitations ou bugs d'IE (bien que réels) nous y sommes confrontés par un présupposé graphique que nous avons en tête, qui à la réflexion est bien souvent contournable au profit d'une autre solution toute autant acceptable graphiquement et qui préserve l'accessibilité du contenu aux utilisateurs de IE malgré ses défauts.
Entre un hack et la perennité de mon code j'ai fait mon choix. Smiley cligne
Je n'ai pas envie dans un an ou deux de reprendre toutes mes feuilles de style pour modifier tous les hacks que j'aurais pu appliquer, parce qu'IE implémentera toutes les recommendations (je suis peut-être un peu optimiste sur le coup Smiley lol ).
Hum... le vrai coupable, dans la bibliothèque et avec le chandelier de rigueur, c'est plutôt le HTML lui-même.

En effet, dans ce cas, nous avons:
- une page invalide autorisant le navigateur à tomber dans sa petite cuisine personnelle de récupération d'erreur.
- IE qui gère l'erreur, mais génère accidentellement un bug de rendu CSS qui a le mérite accidentel d'attirer l'attention
- Firefox et Opera qui gèrent eux aussi l'erreur, sans bug apparent... ce qu'ils ont parfaitement le droit de faire en XHTML traité comme du HTML. Mais du coup, aucun signal d'alerte pour ceux à qui on dit qu'il faut développer dans ces navigateurs respectueux des standards et ensuite adapter dans IE...

Plus drôle:
- si notre quidam pense à vérifier la validité de sa page avant de sauter sur le forum... S'il s'aperçoit ainsi de son erreur, repasse en XHTML transitional... il ne constate aucun changement.

En fait, il n'y a pas de navigateur de référence en HTML : la récupération d'erreur permise à chaque navigateur fausse totalement le jeu.

Plus le temps passe, et plus je vois les mérites du XHTML versant XML...
Laurent Denis a écrit :
Hum... le vrai coupable, dans la bibliothèque et avec le chandelier de rigueur, c'est plutôt le HTML lui-même.

Pour les plus jeunes des membres d'entre vous Laurent cite le jeu de société sans piles ni batteries: le Cluedo Smiley lol


Laurent Denis a écrit :
Plus le temps passe, et plus je vois les mérites du XHTML versant XML...

C'est bien le problème de html et xhtml en tant que html, c'est d'être permissif, l'idéal serait la rigueur de xml et des langages compilés. D'un autre côté html permet à des millions de personnes de s'exprimer, ce que n'auraient pas permis les premiers navigateurs s'ils avaient été moins permissifs. C'est à mon sens une des premières vertues du web, avoir rendu accessible la production de contenu dans des conditions simples à nous tous.
Voila pour ma tentative de troll Smiley lol .
Modifié le 31 Dec 2004 - 19:52