Poprawione menu w templatce MadeYourWeb
Wyniki 1 do 2 z 2

Temat: Poprawione menu w templatce MadeYourWeb

  1. #1
    Bywalec
    Dołączył
    22-10-2005
    Wpisy
    109
    Punkty
    12

    Domyślny Poprawione menu w templatce MadeYourWeb

    Jeśli korzystacie z templatki MadeYourWeb to na pewno spostrzegliście, że tworzenie podpozycji w menu poniżej 1-go stopnia zagłębienia obarczone jest poważnym błędem - pozycja ta wystaje ponad ramkę modułu (załączony obrazek) i nie tylko psuje estetykę, ale przesuwa całą środkową zawartość w prawo i powoduje przez to uciekanie prawej kolumny w dół.

    Wada ta spowodowana jest tym, że autorzy zdefiniowali klasy dla stopnia głównego i 1-go stopnia zagłębienia menu (mainlevel i sublevel), a nie zrobili tego dla wyższych stopni zagnieżdżenia. Aby to poprawić to najpierw należy wziąć na warsztat modules/mod_mainmenu.php i odszukać wiersze 68-70:


    Kod PHP:
     if ($level 0) {
    $menuclass 'sublevel'$params->get'class_sfx');

    które odpowiadają za przypisanie klasy "sublevel" podpunktom 1-go stopnia. Zaraz za tym należy dodać


    Kod PHP:
     if ($level 1) {
    $menuclass 'subsublevel'$params->get'class_sfx');

    który to fragment kodu przypisze klasę "subsublevel" pozycjom menu 2-go stopnia. Hardkorowcy mogą jeszcze raz powtórzyć tą operację i zdefiniować sobie "subsubsublevel" dla ($level > 2) itd.


    Teraz wystarczy tylko dopisać te nowe klasy w plikach styli. Bierzemy więc najpierw plik template_css.css i odszukujemy definicję klasy "sublevel":


    Kod PHP:
    a.sublevel {
    padding0px;
    margin0px;
    font-size10px;
    padding-left12px;
    width139px;
    displayblock;
    line-height20px;
    margin-bottom2px;
    text-decorationnone;
    font-weightnormal;
    border-right4px solid #CACACA;
    voice-family:"\"}\""/* Box Model fix */
    voice-family:inherit;
    width123px;
    }
    html>body a.sublevel {width:123px;} /* Opera5-Fix-fix ;-) */
    a.sublevel:hovera.sublevel#active_menu {
    text-decorationnone;
    width139px;
    voice-family:"\"}\""/* Box Model fix */
    voice-family:inherit;
    width123px;
    }
    html>body a.sublevel:hovera.sublevel#active_menu { /* Opera5-Fix-fix ;-) */
    width123px;

    Kopiujemy to i wklejamy kawałek dalej, a następnie zmieniamy wszędzie sublevel na subsublevel oraz zmniejszamy o 8 pikseli wszystkie wartości 139px (na 131px) oraz 123px (na 115 px). To samo robimy z plikiem css_color_green.css, gdzie znajdujemy


    Kod PHP:
    a.sublevel {
    color#005E31;
    backgroundurl(../images_green/submenu_back.gifleft center no-repeat;
    }
    a.sublevel:hovera.sublevel#active_menu {
    background#F1F1F1 url(../images_green/submenu_back.gif) left center no-repeat;
    border-right4px solid #669E83;

    a następnie powielamy ten fragment kawałek dalej i zamieniamy wszędzie sublevel na subsublevel.

    Uff, gotowe! Trochę roboty z tym jest, ale moim zdaniem warto. Poprawka działa bez zastrzeżeń w Internet Explorerze, Firefoxie i Operze.
    Attached Images Attached Images

  2. #2
    Jesteś wielki!

    Siedze właśnie nad rozszerzeniem tego panelu menu i roboty.
    A jescze chcę zrobić z 4 zagnieżdzenia na wszelki...

    Pozdrawiam.
    Ostanio edytowane przez woju : 27-01-2007 05:37

Reguły pisania

  • Nie możesz zakładać nowych tematów
  • Nie możesz dodawać wypowiedzi
  • Nie możesz dodawać załączników
  • Nie możesz poprawiać swoich postów
  •