2012-04-11 3 views
2

i ont ce schéma de menu:changement d'image de fond et: couleur de vol stationnaire li

<nav> 
    <ul> 
     <li><a href="index.asp">home</a></li> 
     <li><a href="colecao.asp">coleção</a></li> 
     <li><a href="tecnologia.asp">downloads</a></li> 
     <li><a href="contato.asp">contato</a></li> 
    </ul> 
</nav> 

Mon LI est float:left donc, les itens sont côte à côte. je veux quand je planer le a:hover mon fond LI, et une couleur change.

Voir ce violon: http://jsfiddle.net/56wUm/

Si vous passez uniquement sur li, le lien ne fonctionnent pas et la a DonT changer la couleur!

ty pour de l'aide!

Répondre

2

Si vous avez encore besoin d'aide, je suggère d'ajouter le rembourrage à l'élément a dans css plutôt que li. Par exemple quelque chose comme ceci: http://jsfiddle.net/MGRBS/2/

De cette façon, le lien prend tout l'espace de bloc, bonne chance. : D

+0

Ceci est la façon la plus correcte de le faire, de sorte que le lien réel est non seulement survolé et cliqué dans toute la zone du bouton, il vous permet également de changer l'arrière-plan sur le même élément. – plebksig

+0

très agréable !! Merci... – Preston

0

Pour résoudre exactement ce qui se passe, vous devez changer votre a: règle de vol stationnaire légèrement:

ul li:hover a { color: #fff } 

Voir: http://jsfiddle.net/56wUm/4/

Cependant, en termes de facilité d'utilisation, je pense que vous feriez mieux de faire les liens prendre tout le menu espace, faisant une grande cible.

+0

votre solution est bonne, mais quand je hover le 'li' nous ne pouvons pas cliquer. Le lien ne fonctionne que lorsque nous passons en revue le lien 'a' – Preston

0

Vous souhaitez déplacer une partie de ce CSS de A vers le LI. Le but est de faire en sorte que l'A soit contre le LI, donc il n'y a pas d'écart. Vous voulez juste utiliser les LI pour leur propriété flottante, pensez-y comme TDs dans une TABLE. Ils ne devraient pas avoir de vrai style.

Questions connexes