28173 sujets

CSS et mise en forme, CSS3

Bonjour,

J'ai créé un menu horizontal qui s'affiche correctement sous Firefox mais pas sous IE. Si quelqu'un peu m'aider...

#menu {
	background-image: url(../images/bg_menu.png);
	background-repeat: repeat-x;
	margin: 0;
	padding: 0;
	color:#FFFFFF;
	font-size:1em;
	height:35px;
}

#menu ul {
	list-style-type: none;
	margin:0;
	padding-left:25px;
}

#menu li {
	float:left;
}

#menu li a {
	display:block;
	height:26px;
	color:#FFFFFF;
	text-decoration:none;
	margin-right:10px;
	padding-top:9px;
	padding-left:5px;
	padding-right:5px;
}


http://nad1.dyndns.org/nadir/autisme_action2/index.php

Merci Smiley smile
Modifié par Nad1 (11 Jul 2007 - 13:57)
argh je viens de regarder sous ie 6
le carnage vais voir si je peux trouver un truc mais je ne promet rien Smiley cligne
Bon j'ai le meme style de menu que toi et il fonctionne sous IE6

donc par rapport au tiens:

j'ai mis le list-style-type dans le li et non le ul et je n'ai pas mis de display block...essaie pour voir

sinon mon menu est le meme
Voilà j'ai fait les modifs et c'est pas super beau sur firefox encore moins sur ie6, cependant sous ie6 cette fois ca s'affiche en ligne lol.

En fait dés que je met le display:block ca s'affiche en vertical sous ie6 :s.

Merci pour ton aide.
Modifié par Nad1 (12 Jul 2007 - 15:53)
Pour quel problème exactement?

Si tu parles du bloc de droite qui a une marge de droite trop importante sous IE6, il s'agit d'un bug de ce navigateur connu sous le nom de Doubled Margin Bug.

Tu peux le régler très facilement ainsi:
#block {display: inline;}

(À rajouter à tes autres styles pour cet élément.)
Nad1 a écrit :
Non en fait il ne s'agit pas la marge. J'ai remis le style d'origine pour que tu puisses t'apercevoir du bug. Sous firefox c'est le résultat attendu. Et sous ie6 ben c'est le bug constaté...

Eh bien, je ne sais pas si tu as remarqué mais tu as aussi le bug que je signale. Smiley rolleyes

Ça fait donc déjà un bug que tu peux corriger.

Pour le menu, c'est à priori un bug lié au HasLayout et aux flottants, mais je ne sais plus exactement lequel. Début de solution trouvé: faire flotter les a directement, plutôt que les li (on passera ces dernier en display: inline).