Форум русской поддержки Joomla!® CMS
03.12.2016, 02:17:56 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Как задать CSS-класс одного пункта меню?

 (Прочитано 13739 раз)
0 Пользователей и 1 Гость смотрят эту тему.
SORE
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« : 01.06.2011, 16:50:56 »

Всем добрый день! В Joomla 1.6 в меню появилась такая вкладка "CSS-класс ссылки" Можно ли с её помощью задать конкретному пункту меню например красный цвет?
Вобщем задача состоит в том что есть пункт меню "Машины" и там подкатегории, и нужно одну марку выделить красным цветом! Возможно ли такое?

Машины
- BMW
- OPEL (выделить красным цветом)
- AUDI
« Последнее редактирование: 02.06.2011, 20:09:25 от SORE » Записан
Adeptus
Разработчик расширений для Joomla 1.0
*

Репутация: +219/-15
Offline Offline

Пол: Мужской
Сообщений: 1864



« Ответ #1 : 01.06.2011, 17:01:13 »

Без правки кода или JS - нет.  Angry
Записан
SORE
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« Ответ #2 : 01.06.2011, 17:13:17 »

Без правки кода или JS - нет.  Angry
Жаль( а не подскажешь как это можно реализовать с помощью JS или где почитать про это?
Записан
SORE
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« Ответ #3 : 02.06.2011, 20:07:28 »

Нашёл решение, но не через меню " CSS класс ссылки" , а именно через CSS стиль меню который находится в папке шаблона, там надо руками каждому item меню прописать свой стиль и все)
подробнее здесь http://joomlaforum.ru/index.php?topic=120223.0
Записан
Adeptus
Разработчик расширений для Joomla 1.0
*

Репутация: +219/-15
Offline Offline

Пол: Мужской
Сообщений: 1864



« Ответ #4 : 02.06.2011, 20:09:29 »

Нашёл решение, но не через меню " CSS класс ссылки" , а именно через CSS стиль меню который находится в папке шаблона, там надо руками каждому item меню прописать свой стиль и все)

Это не РЕШЕНИЕ.

Это КОСТЫЛЬ.
Записан
SORE
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 16


« Ответ #5 : 02.06.2011, 20:11:27 »

Это не РЕШЕНИЕ.

Это КОСТЫЛЬ.

Согласен! но это лучше чем ничего) Вопрос для чего нужна вкладка "CSS-класс ссылки" и как ей пользоваться остается актуальной...
Записан
intcorp
Завсегдатай
*****

Репутация: +12/-0
Offline Offline

Сообщений: 412


« Ответ #6 : 22.10.2012, 18:49:48 »

в настройке пункта меню если возможность вписать класс без правок кода.
« Последнее редактирование: 22.10.2012, 18:55:52 от intcorp » Записан
Shustry
Moderator
*****

Репутация: +727/-3
Offline Offline

Пол: Мужской
Сообщений: 6667


Рисую дизайны


« Ответ #7 : 24.10.2012, 08:51:39 »

intcorp да, но потом надо вызвать этот параметр в выводе меню. Большинство клубных шаблонов с оверрайдом модулей, и разработчики часто плюют на некоторые опции.
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #8 : 24.10.2012, 10:07:50 »

у каждого пункта меню в режиме плоского списка (что вошел в стандарт с версии 1.5) есть уникальный класс, в чем проблема?
Записан
Shustry
Moderator
*****

Репутация: +727/-3
Offline Offline

Пол: Мужской
Сообщений: 6667


Рисую дизайны


« Ответ #9 : 24.10.2012, 10:23:48 »

beliyadm, здесь (modules\mod_menu\tmpl\ или modules\mod_mainmenu\tmpl\) он есть, а здесь (templates\$template\html\mod_menu\default.php) его может и не быть, если шаблон клубный или вообще какой-нить левый. Для кого-то это видимо проблема.
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #10 : 24.10.2012, 10:50:25 »

beliyadm, здесь (modules\mod_menu\tmpl\ или modules\mod_mainmenu\tmpl\) он есть, а здесь (templates\$template\html\mod_menu\default.php) его может и не быть, если шаблон клубный или вообще какой-нить левый. Для кого-то это видимо проблема.
Да, факт, не подумал
ненавижу клубные шаблоны
проще сверстать самому, нежели разбирать все эти клубные и их подводные камни
Записан
sanswed
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #11 : 09.12.2012, 14:25:03 »

Всем привет! Отвечаю на вопрос "Как задать CSS-класс одного пункта меню?".

Вариант 1. Простой

1. Открываем "Панель управления->Менеджер шаблонов";
2. Перед нами таблица (список) шаблонов. Переходим по ссылке в столбце "Шаблон" искомого шаблона;
3. Откроется шаблон, где будут представлены различные данные, разбитые по блокам. Нас интересует блок "Таблицы стилей";
4. Переходим по ссылке одного из стилей. У меня ссылка называется "Изменить css/template.css";
5. Добавляем нужный класс и сохраняем.


Вариант 2. Сложный
отличается от предыдущего только тем, что нужный нам класс\стиль мы выносим в свой личный, отдельный файл, дабы не вносить изменений в исходные css-файлы Joomla. Это для тех, кому покой только снится Azn

Для этого нужно:
1. Выполнить вход по FTP-протоколу на сервер;
2. Открыть css-папку, из которго наш шаблон подтягивает все css-стили. У меня папка находится вот здесь: "/public_html/templates/my_template/css/" ;
3. Создаём там собственный css-файл. Но это не всё, к сожалению. Теперь нужно сделать так, чтобы наш шаблон видел этот файл, т.е. сделать include;
4. Входим в CMS. Там открываем "Панель управления->Менеджер шаблонов";
5. Переходим по ссылке в столбце "Шаблон" искомого шаблона;
6. Далее, в блоке "Основные файлы шаблона" переходим по ссылке "Изменить шаблон главной страницы";
7. И теперь наша задача аккуратно включить созданный css-файл по подобию того, как это сделано с другими css-файлами данного шаблона;
8. Лично у меня за включение css-файла отвечает строка:
Код:
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/user_style.css" type="text/css" />
Но внимание! вначале найдите похожие строки в исходном коде, и только убедившись (7 раз отмерь) вставляйте свой код;
9. Сохраните. Теперь надо проверить всё ли корректно было сделано. Для этого перейдите на шаг назад, т.е. на карточу вашего шаблона. Там блоке "Таблицы стилей" должен появиться ваш файл. Если этого не произошло, значит ... что-то не так сделали на одном из шагов, описанных мною;
10. Если же всё ок, то можете перейти по ссылке добавленнома css-стиля и внести изменения.

Спасибо, пожалуйста.

Всё написанное сделано на Joomla  2.5.6

P.S. 5 лет программировал на C, C++ и Visual C++ . Сегодня, за 2 ч. узнал что такое CSS и вновь, на интуитивном уровне, разбирался с Joomla. Потратил время, но зато бесплатно)) Жертвуем временем, экономим деньги... Хотя это спорно)
Записан
Shustry
Moderator
*****

Репутация: +727/-3
Offline Offline

Пол: Мужской
Сообщений: 6667


Рисую дизайны


« Ответ #12 : 09.12.2012, 15:30:43 »

За подробной мануал и потраченное время респект. Только он ни разу не по теме и задачу никак не решает Smiley.
Записан
Rio74
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 30


« Ответ #13 : 09.12.2012, 16:50:24 »

Всё написанное сделано на Joomla  2.5.6
Громко сказано, ведь все шаблоны разные и оба варианта могут не подойти, например в моем шаблоне так не получится сделать, потому что файл template.css в принципе отсутствует.
Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #14 : 17.12.2012, 23:59:21 »

ИМХО и оффтоп - никогда не видел дизайна, меню которого не решалось бы стандартным модулем меню, максимум с правкой шаблона модуля меню на уровне шаблона сайта.
Все остальное (клубные шаблоны, конфигураторы шаблонов и прочая галиматья) - от лукавого (ну или от лени)
Записан
l.akkermann
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #15 : 23.01.2013, 15:39:12 »

Подниму тему, вновь расписываясь в своём невежестве, ну а что поделаешь.

http://mammamia-pizza.ru/index.php

Вверху есть меню. Как видно при исследовании элемента, за визуальный стиль отвечает файл mega.css.
Там же можно увидеть id каждого из пунктов - например, "Контакты" имеет запись <a href="/kontakty" class="mega" id="menu523" title="Контакты">
Открываю файл mega.css

Вижу код в самом начале:


Код:
.ja-megamenu a.over, .ja-megamenu a.active { color: #cf4e33; }

/* 0v - 0 and below
-----------------------------------*/
.ja-megamenu ul.level0 {
font-family: "DroidSerifRegular", Arial, sans-serif;
}
.ja-megamenu ul.level0 > li.mega {
background: url(../../images/nav-sep.png) no-repeat right center;
padding: 0;
position: relative;
}

Ну думаю, нашёл!

Добавляю свой.. и вот тут проблема. Я явно не могу понять, как упомянуть корректно конкретный id.
Вот так вот пробовал и слитно, и раздельно, и не помню уже как ещё. Не работает.
Код:
.ja-megamenu ul.level0 > li.mega.id523 {
padding: 0;
position: relative;
background-color: red;
}

Помогите. Sad

p.s: полный файл css
Записан
Fedor Vlasenko
Профи
********

Репутация: +696/-5
Offline Offline

Пол: Мужской
Сообщений: 3820


Все начинается с Value


« Ответ #16 : 23.01.2013, 15:47:04 »

Код
#menu523{
//ваши стили
}
Записан
l.akkermann
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #17 : 23.01.2013, 16:18:22 »

Спасибо огроменное! Azn
Записан
addrss
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Сообщений: 41


« Ответ #18 : 26.12.2015, 14:42:35 »

Я сделал так (Joomla 3):

1. Узнаем ID пункта меню. (смотрим в менеджере меню, у каждого пункта есть уникальный ID)
В моём случае это «1446»

2. Добавляем нужный класс и стили в CSS
В моём случае это:

Код:
a.item-1446{
color:red!important;
font-weight:bold!important;
}

3. В админке в нужном пункте меню в поле «CSS-класс ссылки» пишем «item-1446»

Если не получается, то можно так попробовать:

1. Узнаем ID пункта меню.

2. Смотрим, как он выводится в HTML-разметке
В моём случае это

Код:
<li class="item-1446"><a class="item-1446" href="/price">Прайс</a></li>

3. Добавляем нужный класс и стили в CSS
В моём случае это:

Код:
#mainmenu .navbar-inner ul.nav > li > a.item-1446{
color:red!important;
font-weight:bold!important;
}

4. В админке в нужном пункте меню в поле «CSS-класс ссылки» пишем «item-1446»

Профит
« Последнее редактирование: 26.12.2015, 14:56:16 от addrss » Записан
beliyadm
Профи
********

Репутация: +1566/-61
Offline Offline

Пол: Мужской
Сообщений: 8110


Севастополь == Россия


« Ответ #19 : 10.02.2016, 00:07:41 »

addrss - почти некропост, но вы не читали тему
Это все стандартно, если шаблон клубный или переопределен вывод модуля меню на уровне шаблона - этих классов может и не быть
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet