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ść.
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...
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.
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.
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
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.
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?
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
vBulletin® v4.2.5, Prawa przedruku © 2024 vBulletin Solutions, Inc. Wszystkie prawa zastrzeżone.
Tłumaczenie: Polskie Centrum Joomla!