Strona 1 z 1

Naprawa zakładek menu

: 23 czerwca 2015, 09:09
autor: Espex
Witam,

Mam pewien problem z zakładkami menu. Problem leży w tym, że po na ciśnięciu np. Użytkownicy, zakładka powinna podświetlać się na biało

Mam tak:
(Po naciśnięciu na zakładkę Użytkownicy, zakładka Forum powinna być taka jak reszta a zakładka Użytkownicy podświetlać się na biało)
Obrazek

Prawidłowo wygląda tak:
Obrazek

Adres forum: http://forom.16mb.com/index.php

Re: Naprawa zakładek menu

: 23 czerwca 2015, 09:45
autor: Zyleta
Musisz dodać odpowiedni warunek IF, prawdopodobnie pod klasę obiektu.

Jeśli Twoje menu ma kod mniej więcej taki:

Kod: Zaznacz cały

<li>Forum</li>
<li>Użytkownicy</li>
<li>Kontakt</li>
<li>Regulamin</li>
To musisz dodać odpowiednie warunki dodając klasę "active", tj.
<li<!-- IF SCRIPT_NAME == "index" --> class="active"<!-- ENDIF -->>Forum<li>
<li<!-- IF SCRIPT_NAME == "memberlist" --> class="active"<!-- ENDIF -->>Użytkownicy<li>
itd.

(z tego co widzę na Twojej stronie, nie masz odpowiednich odnośników pod przyciski kontakt i regulamin, ale jak już będziesz, to po nazwie w adresie będziesz mógł odpowiednio dopasować co wpisać w "script name").

Myślę, że to powinno pomóc ;)

Re: Naprawa zakładek menu

: 23 czerwca 2015, 09:51
autor: Espex
Zyleta pisze:Musisz dodać odpowiedni warunek IF, prawdopodobnie pod klasę obiektu.

Jeśli Twoje menu ma kod mniej więcej taki:

Kod: Zaznacz cały

<li>Forum</li>
<li>Użytkownicy</li>
<li>Kontakt</li>
<li>Regulamin</li>
To musisz dodać odpowiednie warunki dodając klasę "active", tj.
<li<!-- IF SCRIPT_NAME == "index" --> class="active"<!-- ENDIF -->>Forum<li>
<li<!-- IF SCRIPT_NAME == "memberlist" --> class="active"<!-- ENDIF -->>Użytkownicy<li>
itd.

(z tego co widzę na Twojej stronie, nie masz odpowiednich odnośników pod przyciski kontakt i regulamin, ale jak już będziesz, to po nazwie w adresie będziesz mógł odpowiednio dopasować co wpisać w "script name").

Myślę, że to powinno pomóc ;)

Zupełnie tego nie ogarniam, dopiero zacząłem zabawę z PhpBB

Mój kod do menu wygląda tak:

Kod: Zaznacz cały

<div class="wp-header-bottom">
		<div class="mwrap">
			<ul class="bottommenu">
				<!-- <li><a href="/">Homepage</a></li> -->
				<li class="active">Forum</li>
                                <li><a href="/memberlist.php">Użytkownicy</a></li>
                                <li><a href="/">Kontakt</a></li>
                                <li><a href="/memberlist.php">Regulamin</a></li>
			</li>
		</div>
	</div>
</div>

Re: Naprawa zakładek menu

: 23 czerwca 2015, 12:26
autor: Zyleta
No to właśnie dałem Ci rozwiązanie :>, fakt, zapomniałem dać w tagi "code", ale jest :>

Kod: Zaznacz cały

<li<!-- IF SCRIPT_NAME == "index" --> class="active"<!-- ENDIF -->>Forum<li>
<li<!-- IF SCRIPT_NAME == "memberlist" --> class="active"<!-- ENDIF -->>Użytkownicy<li>
I mówiłem też, że nie masz żadnego odnośnika do "kontakt" i "regulamin" (tu błędny, bo prowadzący do listy użytkowników), więc nie podam "gotowca", ale mniejsza z tym, powinieneś mniej więcej ogarnąć o co biega :P

Dodam, że warunek IF SCRIPT_NAME oznacza, że jeśli jest aktywny dany element strony (np. index, memberlist, viewforum, viewtopic, faq itp.), to wtedy się aktywuje dana "rzecz" (czyli to co wpiszesz w danym warunku)

Re: Naprawa zakładek menu

: 23 czerwca 2015, 12:50
autor: Espex
Coś nie działa to zbytnio. Zobacz jak to wygląda...

Chce aby na moim forum chodzi tak samo Menu jak na tym forum http://forum.invisionize.pl

Re: Naprawa zakładek menu

: 23 czerwca 2015, 13:35
autor: Zyleta
Faktycznie, mój błąd, zamiast cudzysłowu - ", powinien być znak pojedynczego apostrofu (czy jak to się tam nazywa '

Więc wyglądałoby to tak:

Kod: Zaznacz cały

<li<!-- IF SCRIPT_NAME == 'index' --> class="active"<!-- ENDIF -->>Forum<li>
<li<!-- IF SCRIPT_NAME == 'memberlist' --> class="active"<!-- ENDIF -->>Użytkownicy<li>

Re: Naprawa zakładek menu

: 23 czerwca 2015, 13:39
autor: Espex
Zyleta pisze:<li<!-- IF SCRIPT_NAME ==
Hymm, ale i tak to samo

Re: Naprawa zakładek menu

: 23 czerwca 2015, 15:00
autor: Zyleta
Ja tam widzę różnicę w Twoim menu ;) (pierwsza zakładka o nazwie "Forum" jest zawsze "podświetlona", gdyż zapewne jej nie zmieniałeś. Druga zakładka "Użytkownicy" posiada odnośnik, ale się nie podświetla, więc zapewne jej nie zmieniałeś. Dalej dodałeś to co ja wysłałem, tyle, że ja nie dałem "gotowca" - nie dałem linków przekierowujących, jak masz w tych dwóch poprzednich, wymienionych przeze mnie elementach menu, a samą myśl, jak to rozwiązać. I właśnie te dwa ostatnie elementy menu działają tak jak chciałeś (tylko nie są to linki, przez co sprawia wrażenie błędnego działania).

Jak chcesz "małego gotowca", to wyglądałby on mniej więcej tak:

Kod: Zaznacz cały

<li<!-- IF SCRIPT_NAME == 'index' --> class="active"<!-- ENDIF -->><a href="./index.php">Forum</a></li>
<li<!-- IF SCRIPT_NAME == 'memberlist' --> class="active"<!-- ENDIF -->><a href="/memberlist.php">Użytkownicy</a></li>
To, wydaje mi się, że w mniejszym stopniu jest tym, o co Ci dokładnie chodzi :P Z dodaniem kolejnych elementów menu nie powinieneś mieć większych problemów, gdyż odbywa się to na podobnej (jeśli nie takiej samej) zasadzie ;)

Re: Naprawa zakładek menu

: 24 czerwca 2015, 10:27
autor: Espex
#UP
Faktycznie Wielkie Dzięki

Ale jeszcze coś nie tek jest z tym menu. Pobaw się menu a zobaczysz o co chodzi

Re: Naprawa zakładek menu

: 24 czerwca 2015, 13:16
autor: Zyleta
Chodzi Ci o to, że jak jest zakładka "aktywna", to jest szersza (a po najechaniu białe pole zostaje dookoła a wewnątrz jest niebieskie)??

Jeśli tak, to już musiałbyś się pobawić w plikach css i zmienić style dla menu, poszukaj ul.bottommenu li i tam będziesz mógł sobie zmienić wygląd zakładki (ul.bottommenu li - odpowiada za wygląd zakładki "w spoczynku", ul.bottommenu li.active - wygląd gdy jest "aktywna", czyt. po naciśnięciu, ul.bottommenu li:hover - wygląd po najechaniu. Możesz mieć też bardziej rozbudowane, np. ul.bottommenu li.active:hover, ul.bottommenu li:before itp. i też możesz sobie zobaczyć co to zmieni ;)).

PS samo ul.bottommenu będzie wprowadzało zmianę w pasku, gdzie masz umieszczone menu, a nie w samych elementach menu