Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów
[php]Zaznaczenie działu w menu - Wersja do druku

+- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl)
+-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www)
+--- Dział: Początkujący webmaster (https://www.webmastertalk.pl/forum-poczatkujacy-webmaster)
+--- Wątek: [php]Zaznaczenie działu w menu (/thread-php-zaznaczenie-dzialu-w-menu)



[php]Zaznaczenie działu w menu - SPDesign - 16-01-2010

Witam mam taki mały problem i może jest ktoś w stanie mi pomóc,

mianowicie robię w menu podmianę grafik po najechaniu jak stworzyć efekt w którym po najechaniu na grafikę i przejściu na daną podstronę żeby zmieniona grafika pozostała: jest czerwony i zółty bootom najeżdżam zmienia się na zółty gdy wejdę w ten dział ciągle będzie palił się na żółto.

Mam nadzieję że bardzo prosto to napisałem Smile


RE: zmiana grafiki - Leja - 16-01-2010

a:link to jest jak wygląda link

a:visited to jak wygląda po odwiedzaniu

a:hover to jest po najechaniu

a:active to jest aktywny


RE: zmiana grafiki - SPDesign - 18-01-2010

Hmmm próbowałem coś z Twoją pomocą zrobić lecz... nie wychodzi to.

Menu mam zrobione z img jest to pion z 10 przycisków do każdego linka nadawałem inny class lecz to nie działa to jak powinno więc/...

Kiedyś miałem zrobione to w php

Kod PHP:
<?php

if($_GET['dzial2']=="podzial_planery" || $_GET['dzial2']=="planer_b3" || $_GET['dzial2']=="planer_b2")
$pp1 'src="images/butony/btn_planery_on.png" srcover="images/butony/btn_planery.png"';
else
$pp1 'src="images/butony/btn_planery.png" srcover="images/butony/btn_planery_on.png"'

<img <?php echo $plas; ?> border="0" />

Tylko zapomniałem jak zostało to wykonane może ktoś mi pomoże


RE: [php]Zaznaczenie działu w menu - Labsta.com - 18-01-2010

Opisujesz dość enigmatycznie sprawę, może:
Kod PHP:
<img <?php echo $pp1?> border="0" /> 



RE: [php]Zaznaczenie działu w menu - SPDesign - 18-01-2010

Czyli rozumiem ten sposób tez jest do niczego? działa i to jest najważniejsze czy istnieje prosty sposób taki zapalone przyciski gdy wejdzie się do danego działu?


RE: [php]Zaznaczenie działu w menu - Labsta.com - 18-01-2010

Moim zdaniem najbezpieczniej i najwygodniej jest używać właśnie php. Ogólnie da radę nadawać takie zaznaczenie przez js, jednak jest to gorszy sposób.
Wracając do php wszystko zależy od tego jak masz napisany i zaplanowane skrypty. Jeśli na etapie planowania aplikacji przygotujesz ją do nadawania odpowiednich class w menu to nie ma problemu. Resztę robisz w CSS z kilku powodów m.in.
żeby oddzielić wygląd od treści, ew. zmiana wyglądu powinna następować przez zmianę plików css, a nie przez zmiany html, a w tym przypadku i php
żeby nadawać :hover,
żeby podmieniać tekst na obrazki, tym samym, żeby google przeczytało nazwy działów
itd.
Osobiście robię to np. tak:
- tworzę tablice z elementami menu - działami
- wrzucam to do pętli foreach, która generuje kod html menu
- w pętli sprawdzam czy dział z GET = elementowi z tablicy, jeśli tak nadaje takiemu np. class="active"


RE: [php]Zaznaczenie działu w menu - SPDesign - 19-01-2010

A czy możesz mi pomóc na przykładzie w tej kwestii ?


RE: [php]Zaznaczenie działu w menu - Labsta.com - 19-01-2010

W CSS to poradź sobie tym co napisałem: http://websta.pl/szybkie-triki/szybkitrik-obrazek-z-efektem-hover-rollover-w-css
Dodaj trzeci obrazek dla aktywnego działu.
Przykładowy link zaznaczony będzie wyglądać tak:
Kod:
<a class="link aktywny" href="#"><span>Websta.pl</span></a>
CSS
Kod:
a.link .aktywny
{
background-position: 0px -80px; //czyli trzeci obrazek
}

W php robisz tablicę z działami o składzie dla każdego działu:
Kod PHP:
$tablica[]= array('link' => .... , 'tytul' => ..... , 'tresc' => .... ); 
a potem sprawdzasz i wyliczasz
Kod PHP:
$aktywny $_GET['dzial'];
        
$main_menu ='<ul>';
             for (
$i 1$i count($tablica); $i++) {
                    if( 
$tablica[$i]['link'] == $aktywny ){
                        
$main_menu.='<li><a  class="link aktywny" href="'.$tablica[$i]['link'].'.html" title="'.$tablica[$i]['tytul'].'">'.$tablica[$i]['tresc'].'</a></li>';
                    }else{
                        
$main_menu.='<li><a  class="link" href="'.$tablica[$i]['link'].'.html" title="'.$tablica[$i]['tytul'].'">'.$tablica[$i]['tresc'].'</a></li>';
                    }
                    
                }
         
        
$main_menu .='</ul>';
        print 
$main_menu
Pokazałem Ci działanie, kod jest bardzo prosty i teraz samemu dostosuj to do własnych potrzeb.


RE: [php]Zaznaczenie działu w menu - SPDesign - 19-01-2010

No dzięki za pomoc zrobiłem inne rozwiązanie Smile Wszystko działa pozdrawiam