2012-04-11 10 views
2

Ich habe dieses Menü Schema:ändern Hintergrundbild und a: Hover-Farbe von 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> 

Mein LI ist float:left so die itens sind nebeneinander. Ich will, wenn ich den a:hover Hintergrund LI schwebe, und eine Farbe ändert.

diese Geige Siehe: http://jsfiddle.net/56wUm/

Wenn Sie nur auf li schweben, nicht die Verbindung Arbeit und die a nicht die Farbe ändern!

ty für Hilfe!

Antwort

2

Wenn Sie noch Hilfe benötigen, würde ich empfehlen, das Padding zu einem Element in css statt li hinzuzufügen. Zum Beispiel so etwas: http://jsfiddle.net/MGRBS/2/

Auf diese Weise nimmt der Link den gesamten Block Platz, Viel Glück. : D

+0

Dies ist die korrekteste Art und Weise dies zu tun, so dass der eigentliche Link nicht nur im gesamten Bereich der Schaltfläche verschoben und angeklickt wird, sondern auch der Hintergrund geändert werden kann auf demselben Element. – plebksig

+0

sehr schön !! Vielen Dank... – Preston

0

genau zu beheben, was los ist, müssen Sie ein ändern: Hover-Regel leicht:

ul li:hover a { color: #fff } 

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

In Bezug auf die Benutzerfreundlichkeit denke ich, dass es besser wäre, wenn die Links das gesamte Menü in Anspruch nehmen würden Raum, ein großes Ziel zu machen.

+0

Ihre Lösung ist gut, aber wenn ich den 'li' schwinge, können wir nicht klicken. Der Link funktioniert nur, wenn wir den 'a' Link halten. – Preston

0

Sie möchten etwas von diesem CSS vom A zum LI verschieben. Das Ziel ist es, das A gegen den LI zu stoßen, damit es keine Lücke gibt. Sie möchten nur die LI für ihre schwebende Eigenschaft verwenden, denken Sie an sie wie TDs in einer Tabelle. Sie sollten keinen eigenen Stil haben.