CSS меню Joomla
-
27-10-2019 - |
Вопрос
Я хотел создать меню в верхней части страницы, потому, что конкретный макет в CSS я думал, что это решение для этого, используя следующий код в моем шаблоне (в index.php)
$item_active = $menu->getActive();
for($i = 0; $i > count($menu_items); $i++){
$item = $menu_items[$i];
if($item_active->id == $item->id)
echo '<a href="'.$this->baseurl.'/'.$item->route.'"><div id="button_pressed"><div id="button_text">'.$item->title.'</div></div></a>';
else
echo '<a href="'.$this->baseurl.'/'.$item->route.'"><div id="button"><div id="button_text">'.$item->title.'</div></div></a>';
}
Но разве нет лучшего способа, я думаю, что мне не хватает ссылки здесь
Решение
Этого не должно быть в вашем шаблоне.Меню должно быть в виде модуля.Большинство модулей меню имеют встроенную активную подсветку.Даже основное меню Joomla mod_menu поддерживает активную подсветку.
Другие советы
То, что вам нужно сделать, это переопределить для CSS, так что A: ссылка, A: Hover, A: Посещение использует белый цвет, но вам нужен серый цвет вместо этого для активной страницы. Вы просто делаете что -то одинаково и ставите! Важно за этим в #Active_Menu в качестве примера:
#main a:link, #main a:hover, #main a:visited {colour:#FFF;}
#active_menu {#CCC !important;}
Я думаю, что хороший способ, и это то, как я всегда использую, с тройным оператором в классе ссылок.
-- inside de <a> tag bt without the spaces in the < a> --
< a class="button <?= $item_active->id == $item->id ? : 'button_pressed' : '' ?>" >Hello< /a>
Затем вы добавляете правила CSS в .button_pressed
Это очень чистый способ сделать это. Просто спросите, хотите ли вы дополнительной помощи: D