PDA

Zobacz pełną wersję : active_menu



samurai_jack
17-01-2006, 13:07
Utworzyłem własne menu dla strony które nie korzysta z wybudowanych stylów css dla Joomla i mam małe pytanko dotyczące stanów przycisków w tym menu. Czy ktoś wie jak zrobić aby aktywny przycisk pozostał w stanie "hover" po otwarciu linka tak jak jest to w przypadku wbudowanych stylów css "a.mainlevel#active_menu{}" które dają taką możliwość.

Balas
17-01-2006, 21:55
Linki w Joomli maja przypisywane id="active_menu" gdy sie wchodzi na strone, do ktorej prowadza. Wiec nie lepiej bylo zrobic to menu w Joomli ??

samurai_jack
18-01-2006, 07:45
Mam dwa rodzaje memu na stronie także jedno korzysta z wbudowanych stylów css, a obsługują style stworzone przeze mnie. Także nie ma takiej możliwości.

sunpietro
24-12-2008, 13:34
witam,
wiem że wracam do starego tematu, ale tez chciałem zastosować to rozwiązanie u siebie. Mam taki kod u siebie:

#menu {
margin: auto;
width: 800px;
height: 36px;
}
#menu ul {
margin: 0;
padding: 0;
display: inline;
}
#menu li {
float: left;
list-style-type: none;
margin-right: 10px;
}
#menu li a, #menu li a:visited {
color: #003cc3;
text-decoration: none;
text-align: center;
font-family: Tahoma, sans-serif;
font-size: 18px;
line-height: 36px;
padding-left: 5px;
padding-right: 5px;
padding-top: 5px;
padding-bottom: 5px;
}
#menu li a:visited {
background-image: none;
}
#menu li a:hover, #menu li a:active, .mainlevel#active_menu, a.mainlevel#active_menu:hover {
background-image: url(../images/btnactive.png);
background-position: center;
width: 250px;
height: 40px;
}
#menu li ul, #menu li li ul, #menu li li li ul {
display: none;
}
#menu li:hover ul {
display: block;
position: absolute;
width: 250px;
height: 30px;
margin: 0;
}
#menu li:hover li a {
width: 250px;
height: 30px;
background-image: url(../images/subbtn.jpg);
background-repeat: no-repeat;
background-position: center;
padding-left: 30px;
padding-right: 30px;
}
#menu li li:hover a {
width: 100%;
height: 30px;
background: url(../images/subbtnhover.jpg) no-repeat;
}
Jak sprawić by to podświetlenie aktywnej pozycji cały czas działało, a nie tylko na hoverze??

sunpietro
25-12-2008, 11:15
może mi ktoś pomóc w tej kwestii??

zwiastun
25-12-2008, 13:25
1. #active_menu to identyfikator nadawany odnośnikom w Joomla 1.0 a nie w 1.5 (w 1.5 tylko w trybie zgodności wstecznej)
2. Aktywną (wybraną) pozycję menu stylizuje pseudoklasa :active, jej deklaracja musi być umieszczona po :link, :visited i :hover
3. W Joomla 1.5 menu oparte na liście (pierwsza opcja) generuje oznaczenia atrybutami klas current i active element li, obejmujący aktywną pozycję menu.

sunpietro
25-12-2008, 13:27
czyli, jeżeli bym postawił deklarację active wczesniej na przykład przed visited to nie zadziała, tak?
dzięki za podpowiedź :)

zwiastun
25-12-2008, 13:28
Oczywiście, że nie -podkreślają to wszystkie omówienia!

fenix1974
15-01-2009, 09:27
Witam serdecznie,
Ja mam bardzo podobny problem.
Mam górne menu mocno rozbudowane. Wstawiam dodatkowe menu w Joomla! 1.5, w którym to są linki do wybranych pozycji z menu górnego.
Jak wybieram pozycję z menu górnego czy to dodatkowego, która to jest wspólna dla obu menu to wybór jest widoczny (podświetlony) tylko w menu górnym, a w menu dodatkowym nie.
Przyznam, że nie potrafię sam rozwiązać tego problemu i bardzo potrzebuję Waszej pomocy.
Zastanawiam się, czy ten problem jest w ogóle do rozwiązania...

hesar
15-01-2009, 09:51
gdybys spojrzal w kod to zauwazylbys ze menu boczne i menu gorne maja zupelnie inne klasy css wiec samo dodanie wspolngo menu nie rozwiazuje zadnego problemu to raz
a dwa ze rozwiazanie menu:hover dziala jednorazowo na jednego linka 'najechanie na link' (przeciez przegladarka nie sprawdza czy przypadkiem na stronie nie ma drugiego linka do tego samego contentu) - zeby cos takiego zrobic nalezaloby pewnie zastosowac js albo oba menu we flashu i przekazywac sobie wzajemnie jakis parametr dla rollover - niestety js nie znam zupelnie wiec sie nie wypowiem konkretnie

fenix1974
15-01-2009, 11:12
Jak wybieram pozycję z menu górnego czy to dodatkowego, która to jest wspólna dla obu menu to wybór jest widoczny (podświetlony) tylko w menu górnym, a w menu dodatkowym nie.


No ale chodzi mi o to, że jak wybieram opcję z menu bocznego to i tak nie jest ona podświetlana, a z tego co piszesz powinna być. Jeden aktywny link = pod świetlenie.

hesar
15-01-2009, 11:22
czytamy jeszcze raz ze zrozumieniem


gdybys spojrzal w kod to zauwazylbys ze menu boczne i menu gorne maja zupelnie inne klasy css
HINT:klasa css odpowiada za podswietlenie

fenix1974
15-01-2009, 11:33
Czytam, czytam ... dzięki wielkie za pomoc.

Już do mnie dotarło, że nie zadziała.
Pomyślałem tylko, że może jest na to jakiś sposób.

keran
30-01-2009, 09:15
Bo nowa Joomla jest zryta. Czego by nie użyć do budowy 'duplikatu linku' -> 'Aliasu' czy też ' Linku zewnętrznego' to i tak nie działa.

zwiastun
30-01-2009, 13:04
A może po prostu trzeba doczytać ten kod dokładnie? Co tu jest "zryte"? Koncert się muzykowi nie udaje bo mu skrzypce siadły?
1. #active_menu to styl dla przypisany selektorowi identyfikatora a nie klasa.
2. Jest to styl z poprzedniego wydania Joomla 1.0 - w Joomla 1.5 wykorzystywany jedynie w trybie zgodności
3. W Joomla 1.5 standardowe i zgodne ze standardami menu generowane jest po wybraniu stylu Lista (pozostałe trzy w polskim wydaniu nazwane są Zgodność - coś tam).
4. Do formatowania menu w stylu Lista nie dość że możemy skorzystać ze standardowych pseudoklas: :link, :visited, :active, :hover, :focus, to mamy jeszcze klasy current, active i itemXXX

keran
30-01-2009, 15:48
Prepraszam za te 'zryte' :)
Wszystko się wyjaśniło, Aliasy działają dobrze w nowej Joomli. To szablon ingerował mi w linki menu :(
To także rada dla pozostałych, sprawdzajcie co Wam szablon wyprawia.

samand
08-03-2009, 19:40
Jestem początkujący w CSS. Przerabiam powoli templatkę, bo nie mogę znależć jednej o takim układzie który chce.
Mam 2 menu, górną i główną. W górnej chce aby link który użyłem wyglądał inaczej gdy jestem na tej stronie.
Czytałem ten forum i różne inne, próbowałem rożne metody i dalej nie wiem jak to zrobić.
Działa mi a:link, a:hover, a:active. a:visited nie działa.
Narazie kod mam taki:
#Top_left a {
font-family: Arial, helvetica, sans-serif;
font-size: 10px;
float:left;
padding: 7px 20px 0px 20px;
text-decoration: none;
border-right: 1px solid #f49ac1;
height: 20px;
}

#Top_left li {
float: left;
margin: 0;
padding: 0;
list-style:none;
}

#Top_left a:visited{
color: #FFFFFF;
}
#Top_left a:link{
color: #000000;
}
#Top_left a:hover{
color: #CCCCCC;
}
#Top_left a:active{
color: #EEEEEE;
}
Czy może ktoś mi pomóc?

hesar
09-03-2009, 08:44
a skad ci sie wzielo a:visited?
a popatrzyles jaki ma selektor klasa aktualnie uzywanego elementu menu?

uzyj firebuga do zbadania jak ci sie zmieniaja klasy w zaleznosci od tego co i gdzie klikniesz i bedziesz wiedzial co zle robisz :/

zwiastun
09-03-2009, 12:33
pseudoklasy muszą być zdeklarowane w arkuszu CSS w kolejności: :link, :visited, :active, :hover