czy to możliwe bez hakowania javascript? lubię to:
<ul class="my_menu">
<li class="first"> ... </li>
<li> ... </li>
<li> ... </li>
<li class"with_sub"> ...
<ul class="my_menu_sub">
<li class="first"> ... </li>
<li> ... </li>
<li> ... </li>
<li class="last"> ... </li>
</ul>
</li>
<li> ... </li>
<li> ... </li>
<li class="last"> ... </li>
</ul>
Odpowiedzi:
Lepsze i prostsze podejście:
źródło
Oto krótki fragment, który zajmuje się modyfikowaniem wyjścia menu i dodawaniem pierwszej / ostatniej do pierwszej i ostatniej klasy (zewnętrzna
ul
nie jest stosowana na tym etapie, więc się nie liczy). Uwaga - wymaga PHP5 dostrripos()
Trochę utknąłem w tym, jak sprawić, by obsługiwał zagnieżdżone listy, ale powinien przynajmniej zacząć.
źródło
Oto funkcja dodawania tylko pierwszej / ostatniej klasy do elementów menu nadrzędnego. W przypadku większości stylów CSS to wszystko, co jest konieczne.
źródło
Dowiedz się więcej o nowym interfejsie API menu w Wordpress 3. Możesz ręcznie nadać dowolnemu elementowi własną klasę. Po opanowaniu sprawia, że edytowanie menu jest przyjemnością.
źródło
Jeśli masz zagnieżdżone menu
Podoba mi się prostota odpowiedzi Ismaelja, ale jeśli chcesz mieć podmenu, musi być ich więcej.
źródło
Jeśli nie potrzebujesz wsparcia dla IE8 lub starszej wersji, nie zapomnij, że możesz również użyć czystego CSS:
Obsługa przeglądarki jQuery jest jeszcze lepsza, ale wygląda na to, że próbujesz tego uniknąć.
źródło
Oto lepszy kod dodawania pierwszej i ostatniej klasy pozycji menu, który obejmuje obsługę zagnieżdżonych podmenu.
Możesz znaleźć istotę tutaj i powiązany samouczek tutaj .
źródło
Co powiesz na:
a może jakiś http://selectivizr.com/
źródło
<li>
na każdej nieuporządkowanej liście w witrynie, nie tylko w menu. Jest również merytorycznie identyczny z tą odpowiedzią wordpress.stackexchange.com/a/63128/9844Czysty CSS, działa dla mnie. Działa to również z podmenu
źródło