2011-11-16 3 views
0

J'ai un menu déroulant sur: http://whitehornguard.com/ mais dans au moins IE7 la partie déroulante apparaît sous la grande image d'en-tête, j'ai essayé de changer l'index-z & en utilisant! Important mais il ne semble pas faire de différence ..Problème avec z-index dans IE7

Qu'est-ce que je fais mal? Merci.

+0

Un problème bien connu. Google "ie7 z-index" pour les articles. En voici un qui ressemble beaucoup à votre situation: http://brenelz.com/blog/squish-the-internet-explorer-z-index-bug/ – Blazemonger

+0

duplication possible de [ie7 problème d'index z] (http: // stackoverflow.com/questions/1287439/ie7-z-index-problem) – Blazemonger

+0

assurez-vous que votre #header_image et li.menu_item a un index-z ainsi – Alex

Répondre

2

Ceci est un problème connu avec IE. Il y a un truc pour le contourner. Essayez d'envelopper le menu avec conteneur supplémentaire avec le style suivant:

<div id="wrapper" style="position:relative; z-index: 1000;"> 
    <div id="menu" style="position:absolute; z-index: 999;"></div> 
</div> 

S'il vous plaît notez que z-index du menu est inférieur au conteneur.

Pour plus de détails s'il vous plaît vérifier: http://brenelz.com/blog/squish-the-internet-explorer-z-index-bug/

+0

Merci, j'ai utilisé un div que j'avais déjà comme un emballage, mais ce qui l'a fait fonctionner donnait aux enfants des index plus petits que leurs parents. – 472084

+0

l'index z de l'élément enfant ne peut pas dépasser l'index z de leur parent. Son spécifié dans les normes W3C – Kasturi

+0

Ce qui est spécifié dans les normes W3C non respectées par IE:) –

0

Le problème est, que IE nécessite juste une utilisation de position. Donc le z.index sera juste utilisé, si la position est présente. Pour un élément, vous ne voulez pas donner de position-règles, essayez simplement de définir position: relative

+0

Tous les nœuds sur lesquels j'ai utilisé z-index ont également un jeu de positions. – 472084

0

Vous enveloppez vos nav dans un div avec des styles en ligne. Ajoutez-y z-index:1000;. Il résout le problème.