nice menu primary links és a li

leonidasz képe

Sziasztok!

Nos, feladat egy olyan almenüs menü létrehozása, aminek a főmenüpontjai lekerekített hátterűek.

Ilyen kell legyen: http://medicahumana.hu

Ami eddig meg van: nice menu patchelve, így a li tagok kapnak active-trail classt.
A háttér két képből áll össze, jobb ill bal oldaliból.
Úgy van megoldva, ha aktív egy menüpont akkor a li.active-trail háttere a bal oldlra pozicionált háttérkép, és a a.active-nek pedig a jobb oldali elem a háttérképe. Így kiadják a lekerekített hátteret, ami dinamikusan nő, így igazodik a menüpont szélességéhez.
Akkor jól működik ha a főmenüpont az aktív, de ha egy almenüpontot nyitok meg akkor a főmenünek csak a li.active-trail classja érvényesül, mert az a.active egy alacsonyabban lévő menüponton van.

Az kéne, ha egy almenüpontot nyitunk meg, akkor a főmenüpont 'a' tagje kapjon mondjuk egy parent classt, de csak akkor, így meg tudom adni annak a hiányzó hátteret.

Köszönöm, előre a segítséget.

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Fórum: 
szantog képe

Nézd meg devel_themer-ben, hogy a nice menunél milyen sminkfüggvény írja ki a menu itemet (józan paraszti ésszel: theme_nice_menus_item), és írd át a sminkben, hogy már a li is kapjon active classt.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

leonidasz képe

A li kap active clast. Nekem parent kell, ha egy almenüjepontján vagyunk akkor a főmenü a tag-je kapjon egy parent, vagy szulo, active2 tökmind1 calss nevet :)

0
0
leonidasz képe

Nos sikerült megoldani, úgy hogy kapott a primary link a tagja taget.
Template.php-ba ezt kell írni:

function sminkneve_menu_item_link($link) {
  if (empty($link['localized_options'])) {
    $link['localized_options'] = array();
  }
  return l('<span>'.$link['title'].'</span>', $link['href'], $link['localized_options'] + array('html' => true));
}

Css:

#navmenu ul li.hover a, #navmenu ul li a:hover, #navmenu ul li.active-trail a {
background-position:left -37px;
}
#navmenu ul li a {
background:transparent url(images/tab-left.gif) no-repeat scroll left 0;
display:block;
margin:0 4px 0 0;
padding:11px 0 11px 24px;
}

#navmenu ul li.hover a span, #navmenu ul li a span:hover, #navmenu ul li a:hover span, #navmenu ul li.active-trail a span {
background-position:right -37px;
}

#navmenu ul li a span {
background:transparent url(images/tab-right.gif) no-repeat scroll right 0;
color:#154B70;
padding:11px 24px 11px 0;
}

Eredmény:
lekerekített sarkú menüpont, mely mást mutat aktív állapotában. És úgy is jó, ha almenüpontra kattintunk, akkor a főmenüpont aktívnak látszik.

Nicemenüt is használtam. A nice menü-t pacthelni is kell.
http://drupal.org/node/465738 #11 a megoldás, így a li tag kap active-trail classt

0
0