2011-08-25 14 views
5

Mam listę generowaną dynamicznie, która ma potencjalnie do około 5 poziomów. Chcę, aby tekst pozycji na liście był podkreślony, gdy umieściłem kursor nad wymienionym elementem, ale nie nadrzędnym li.targeting li na hover, ale nie nadrzędny li

patrz przykład.

http://jsfiddle.net/ca7fL/5/

można zobaczyć po najechaniu na "ten", powyższe rodzic li podkreśla również.

Wszelkie pomysły?

Cheers

+0

Jeśli masz li bez dzieci, które powinny podkreślenie gdy unosił się nad? – ipr101

+0

nie, to nie musi podkreślać – AJFMEDIA

Odpowiedz

7

To wydaje się trudne do osiągnięcia, ponieważ gdy wskażesz elementowi dziecko li, skutecznie wskażesz również jego rodzica.

Jest rozwiązanie, ale: dodać span tag do pozycji menu, a dokonać tego znacznika hoverable: http://jsfiddle.net/ca7fL/16/

+0

doskonały pomysł! Twoje zdrowie – AJFMEDIA

-1
ul li ul { padding-left:20px} 
ul li ul li:hover { text-decoration:underline; curor:pointer;} 
+2

Wyłącza to działanie dla najwyższego poziomu 'li'. Nie sądzę, że tego właśnie chce. – Kokos

+0

ten usuwa: hover-formatting z "ul li", który jest również potrzebny. – HBublitz

+0

Ponadto, nie będzie działać zgodnie z wymaganiami, jeśli lista jest zagnieżdżona na wielu poziomach (liczba operacji do 5). – Jon

0

Może trzeba zastosować klas CSS LI - elementy przy ich geenerating, więc można projektować je wyraźnie. Sam CSS wydaje się tu niewystarczający.