2011-09-01 2 views
3

J'essaie de faire un menu de travail afin que le menu reste dans l'état stationnaire quand son sous-menu/menu enfant est sélectionné:Comment faire un objet parent dans le menu CSS rester dans l'état stationnaire lorsque les enfants sont survolés

voir l'exemple ici: http://cssdesk.com/5vJP6

Si quelqu'un pouvait expliquer ce qui doit être ajouté au CSS pour faire ce travail ce serait génial. Je ne veux pas utiliser de javascript externe pour que cela se produise!

J'ai eu un coup d'œil à quelques questions similaires ici, mais aucun de leurs réponses a fonctionné pour moi

grâce

+0

je mettrais la classe (top_parent) sur l'élément de liste à la place du lien – kalpaitch

+0

@ kalpaitch - pourriez-vous développer cela s'il vous plaît? (ou le coller quelque part?) – falter

+0

vérifier http://www.cssplay.co.uk/ –

Répondre

3

J'ajouté ceci:

#menuh ul li:hover a {color: black !important; border-bottom: 1px dashed #C1D9F0 !important; } 
#menuh ul li:hover li a {color: #505050 !important;} 
#menuh ul li:hover li a:hover {color: #297BB6 !important; } 

qui a résolu mon problème :-)

+1

Vous pouvez également utiliser '#menuh> ul> li: hover a', mais cela n'est pas supporté par IE6. – RoToRa

2

Définir le :hover sur l'élément li à la place du lien, par exemple:

#menuh li:hover A 
{ 
} 

(Dito pour tous les a:hover s)

Cependant, cela ne fonctionnera pas dans IE6. Vous aurez besoin d'avoir une solution JavaScript ici.

+0

Merci, cela a aidé - mais il semble avoir pris en charge les styles hover de chacun des éléments de la liste (ils avaient l'habitude d'avoir des arrière-plans bleus avant d'ajouter des lignes 113-120) - comment pourrais-je les rendre différent? – falter

0

C'était super utile! Voici ce que je fini par utiliser pour vous assurer que l'arrière-plan et la couleur de police de ma principale navigation ne sont pas prioritaires sur le sous nav

#nav ul li:hover a {background-color: #353535; color: #A98C0C;} 
#nav ul li:hover li a {background:none; color: #aaa; } 
#nav ul li:hover li a:hover {background:none; color: #fff; } 
Questions connexes