28172 sujets

CSS et mise en forme, CSS3

Bonjour

J’avais trouvé et j’utilise ce code :

<!--  Ouvrir une liste 
window.onload=montre; 
function montre(id) { 
var d = document.getElementById(id); 
	for (var i = 1; i<=10; i++) { 
		if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';} } 
if (d) {d.style.display='block';} 
} 
//  End -->


que j’appelle, par exemple, avec :

<div id="menu"> 
<dl> 
<dt onmouseover="javascript:montre('smenu1');"><?php echo $lib_ind02 ?></dt>  <dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');"> 	
<ul> 	
<li><a href="esp010/index" style="color:red;"><?php echo $lib_ind010s ?></a></li> 	
<li><a href="esp011/index" style="color:red;"><?php echo $lib_ind011s ?></a></li> 	
</ul> 	
</dd> 
</dl> 
</div>


Mon problème : ces menus ne s’affichent pas avec IE6, tout en s’affichant bien avec IE7 ou IE8.

Merci par avance à celui qui trouvera le moyen d’afficher ces menus avec IE6.

Francois
Modifié par francoisch (12 Mar 2010 - 09:31)
Bonjour,

Sans le code CSS, il va être difficile de te répondre.

J'avoue également qu'une page en ligne simplifierais la constatation du problème.
bonjour

La page en ligne: la page d'accueil du site à www.a0p.fr

Pour la CSS, je pourrais te l'envoyer mais, comme elle est un peu volumineuse, je ne l'affiche pas ici.

Merci de ta réponse.

Francois
Alors, je pense que le menu passe sous ton header (qui n'apparait d'ailleurs pas non plus sous IE6) à cause du position:absolute; sans valeur top ou bottom (donc de base top:0).

Je ne vois d'ailleurs pas trop l'utilité du positionnement absolu ici.

Je pense que tu pourrais réutiliser le gabarit 06.

J'ajouterais également que le menu déroulant n'est pas forcément adapté ici (vu qu'il n'y a qu'un seul élément).
Modifié par Laurie-Anne (08 Mar 2010 - 19:57)
Merci de ta réponse.

Comme tu le suggérais, j'ai supprimé, pour voir, le Absolute dans Menu; tu vois le résultat, très positif, sur l'image jointe, le menu réapparait bien en IE6 sous IEtester.

Simplement, mon menu à gauche décale verticalement mon texte à droite.

Si tu avais une suggestion pour éviter ça.

Francois upload/9707-sansAbsolut.jpg
Modifié par francoisch (08 Mar 2010 - 22:05)
Le positionnement flottant devrait grandement aider.

Je te conseille de nouveau de jeter un coup d'œil aux gabarits de Florent Smiley cligne
Bonjour

Je me suis inspiré autant que possible de Gabarit 6 :
• Le #menu est en float left
• Le #main avec un margin-left = largeur du menu
• J’ai ajouté un #global, pour voir
sur mon site de test (pas sur a0p.fr).

les Div menu et main se suivent dans cet ordre dans la page.

Mais le menu à gauche de la page d’accueil décale toujours vers le bas le contenu de main.

Le code du menu n'est pas en cause: je l'ai remplacé par <p>aaaaa</p> et le décalage persistait. Le problème est donc bien dans ma CSS.

Si tu avais une piste pour me permettre de progresser.

Par avance merci de ton aide.

Francois
Modifié par francoisch (10 Mar 2010 - 14:13)
Bonjour,

ça ressemble à un manque de place. IE6 a parfois du mal avec les arrondis donc si la largeur de tes deux blocs font pile 100% de la page/de laur conteneur, il est possible que lors du calcul de la dimension en px des bloc (l'écran étant composé de px) leur largeur fasse plus que l'espace disponible.

Le plus simple étant de donner pour IE6 une taille de bloc plus petite (pour un des bloc) via un commentaire conditionnel.
bonjour et merci de ta réponse.

Effectivement, j'ai ajouté 1 px et le menu "invisible" en IE6 apparaît, du moins montré par IE Tester.

Ton diagnostic était le bon.

Merci de ton aide précieuse.

Francois