0 Пользователей и 1 Гость просматривают эту тему.
  • 29 Ответов
  • 4338 Просмотров
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Нумерация строк в меню.
« : 18.06.2012, 11:58:55 »
Здравствуйте подскажите как в модуле меню прописать нумерацию каждого раздела меню.
Нашел несколько способов но везде надо в HTML прописывать ol
А мне нужно именно в CSS.
Создаю меню для Joomla 1.5 и хотел бы что бы каждый раздел меню начинался с цифры  list-style-type: upper-roman;
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #1 : 18.06.2012, 12:04:49 »
Мой выбор - PHP ^-^
Код: php
$x = 1;
потом в цикле
foreach ($list as $i => $item) {
echo '<a href="#">'.$x.$item->title.'</a>';
$x++;
}
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #2 : 18.06.2012, 12:37:02 »
Мой выбор - PHP ^-^
Код: php
$x = 1;
потом в цикле
foreach ($list as $i => $item) {
echo '<a href="#">'.$x.$item->title.'</a>';
$x++;
}
Честно говоря ответ мне понравился с виду простой без всяких загадок как это часто бывает когда спрашиваешь. Но к сожалению я пишу один из первых своих модулей (учусь)  и моих знаний не хватает куда вставить этот код. Потому и просил при помощи CSS. Но все равно спасибо.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #3 : 18.06.2012, 12:47:44 »
Пожалуйста. Обычно все данные собираются в массив объектов типа:
Код
[0]
$list->title = 'Превед, я новость раз';
$list->id = '1';
[1]
$list->title = 'Превед, я новость два';
$list->id = '2';
[2]
$list->title = 'Превед, я новость три';
$list->id = '3';
....
Потом выводятся циклом:
Код: php
foreach ($list as $item) {
//один элемент массива
}
Получаем:
Код: php
$item->title = 'Превед, я новость раз';
$item->id = '1';
Если объявить некую переменную $x ДО цикла, а потом в цикле наращивать, то получим: 1, 2, 3.... Т.е. значение будет возрастать. Вот это приращение и выводим для получения списка. Эх, кто б мне так объяснял бы ^-^
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #4 : 18.06.2012, 12:52:41 »
выбирайте тип маркера какой надо и прописывайте в цсс
http://www.w3schools.com/cssref/pr_list-style-type.asp
http://htmlbook.ru/css/list-style-type

ol от ul отличается только тем что у него list-style-type:decimal по умолчанию идет
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #5 : 18.06.2012, 13:05:54 »
выбирайте тип маркера какой надо и прописывайте в цсс
http://www.w3schools.com/cssref/pr_list-style-type.asp
http://htmlbook.ru/css/list-style-type

ol от ul отличается только тем что у него list-style-type:decimal по умолчанию идет
Век живи - век учись. ^-^ Я считал, что главное отличие - один нумерованный, другой простой. А декораторы типа кружочков/точечег - дело десятое уже. И, потом, у нумерованного списка есть свои проблемы со вложенностью. ТС как раз меню делает, как понял, многоуровневое. Тут или JS или  PHP надо юзать.
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #6 : 18.06.2012, 13:19:37 »
если все вложенное должно быть пронумеровано, через стили оно нормально пронумеруется(это про обычный ul, про косяки нумерованного не знаю так как не юзаю)).

если маркеры во вложеных меню разные, в тех же стилях маркеры ставятся через селекторы
ul {list-style:decimal} /*для первого уровня и остальных*/
ul ul{list-style:upper-roman} /*для второго уровня и остальных*/
и т.д)
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #7 : 18.06.2012, 14:02:37 »
Век живи - век учись. ^-^ Я считал, что главное отличие - один нумерованный, другой простой. А декораторы типа кружочков/точечег - дело десятое уже. И, потом, у нумерованного списка есть свои проблемы со вложенностью. ТС как раз меню делает, как понял, многоуровневое. Тут или JS или  PHP надо юзать.
Так ну значит я правильно все делал.
Пробовал в шаблоне сайта прописать ol.{list-style-type:upper-roman} Что бы проверить, все работает но это получается когда я заключаю текст в <ol> через редактор.  Что правильно. Но когда я это прописываю в модуле не чего не работает что тоже правильно в <ol> я же не чего не заключал.  Значит проблема не решена. Я создал новый модуль состоит из нескольких файлов один из них menu.css  когда я прописал там ol.{list-style-type:upper-roman и проверил этот код через Firebug  на сайте я его там не увидел.  По идеи мне нужно создать простейшее меню из 5 разделов без подкатегорий.  И можете пожалуйста более популярно объяснить как же мне заставить автоматически нумеровать.

*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #8 : 18.06.2012, 14:06:51 »
если все вложенное должно быть пронумеровано, через стили оно нормально пронумеруется(это про обычный ul, про косяки нумерованного не знаю так как не юзаю)).

если маркеры во вложеных меню разные, в тех же стилях маркеры ставятся через селекторы
ul {list-style:decimal} /*для первого уровня и остальных*/
ul ul{list-style:upper-roman} /*для второго уровня и остальных*/
и т.д)
Ну это я понял но для того что бы это работало я текст должен заключить в <ol>сайт <ol/>
Это все отлично получается в тексте….. Но у меня обычный модуль меню и названия разделов …. Я не прописываю в модуле а в админ панели joomla  в редакторе меню и значит я не могу прописать <ol>
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #9 : 18.06.2012, 14:14:31 »
Ну это я понял но для того что бы это работало я текст должен заключить в <ol>сайт <ol/>
Это все отлично получается в тексте….. Но у меня обычный модуль меню и названия разделов …. Я не прописываю в модуле а в админ панели joomla  в редакторе меню и значит я не могу прописать <ol>

Бррррр что то я запутался если прописать .ul{list-style:upper-roman} все разделы меню автоматически должны нумероваться но что то не хотят и даже через  firebeg видеться не хочет. в чем может быть проблема не магу понять.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #10 : 18.06.2012, 14:21:01 »
Селектор неверно написали.
Код: css
ul{list-style:upper-roman}
без точки в начале. Хотя, не факт, что появится. Ищите ближайший родительский селектор и пишите как-то так
Код: css
#content ul{list-style:upper-roman}
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #11 : 18.06.2012, 14:55:18 »
Селектор неверно написали.
Код: css
ul{list-style:upper-roman}
без точки в начале. Хотя, не факт, что появится. Ищите ближайший родительский селектор и пишите как-то так
Код: css
#content ul{list-style:upper-roman}

Как бы я не пытался что либо прописать в menu CSS вижу через FireBug только это
.menu .headerbar a {
.menu .headerbar {
Не чего другова там прописать не выходит что бы я не пытался прописать во всяком случае Firebug  не чего другова не показывает не говоря уж о
ul { list-style-type: upper-roman;  Где я мог что неправильно сделать.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #12 : 18.06.2012, 15:03:27 »
Код: css
.menu .headerbar li {list-style:upper-roman}
попробуйте
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #13 : 18.06.2012, 15:15:11 »
Код: css
.menu .headerbar li {list-style:upper-roman}
попробуйте
Уже пробовал не помагло.
Мне кажется проблема в самом модуле.  Но из фала menu CSS я уже все удалил осталось только
@charset "utf-8";

/* CSS Document */
.menu{
width: 200px;
}
.menu .headerbar a{
display: block;
}
.menu .headerbar li {
list-style:upper-roman
}
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #14 : 18.06.2012, 15:16:59 »
Код: css
li {list-style:upper-roman !important;}
попробуйте ^-^
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #15 : 18.06.2012, 15:27:29 »
Код: css
li {list-style:upper-roman !important;}
попробуйте ^-^
Да блин легче новый модуль создать по-моему фигня с ним какая-то  все сайт обрел цифры даже стандартный модуль меню просто как хотел супер. Но мне нужно было только мой модуль меню с ними был а как раз его даже и не тронуло.  Что за чертовщина то такая.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #16 : 18.06.2012, 15:31:18 »
А там точно список есть? Последнее должно было сработать при любых обстоятельствах.
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #17 : 18.06.2012, 16:32:35 »
если мы сможем увидеть сам сайт, всем будет проще)
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #18 : 18.06.2012, 17:40:40 »
А там точно список есть? Последнее должно было сработать при любых обстоятельствах.
Решил взять другое меню. Уже готовое и от него  отталкивается. Все получилось как я хотел используя данный код li {list-style:upper-roman !important;}

Но теперь везде на маем сайте цифры. В самом шаблоне я использовал ul {
    list-style-image: url("images/marker.png");
} для того что бы в место точек была картинка. Но теперь там не картинка а цифра.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #19 : 18.06.2012, 17:45:24 »
mif2008, надо локально стили применять. Т.е. хотите, например, чтобы у вас нумерация была только у списка внутри статьи: смотрите, какой отличительный селектор есть только у статей. Например, общий контейнет div#article. Значит в стилях пишите #article li {}, чтобы это правило распростанялость только на элементы списка внутри статьи.
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #20 : 18.06.2012, 17:45:47 »
Решил взять другое меню. Уже готовое и от него  отталкивается. Все получилось как я хотел используя данный код li {list-style:upper-roman !important;}

Но теперь везде на маем сайте цифры. В самом шаблоне я использовал ul {
    list-style-image: url("images/marker.png");
} для того что бы в место точек была картинка. Но теперь там не картинка а цифра.

Данный код вмешивается в весь шаблон а должен оставаться в рамках одного модуля.
Модуль использовал CustoMenu у него есть возможность использования своей таблицы стиля. При написании ul{list-style:upper-roman}результатов не дал. Фрагмент из стандартного CSS файла данного модуля.

/* DEFAULT */
div.customenu_layout_default div.customenu_default a span {
   background: transparent url(../images/menu_button.png) repeat-x 50% 0;
}

/* DEFAULT: hover */
div.customenu_layout_default div.customenu_default a span.link_hover {
   background-position: 50% -40px;
}

/* DEFAULT: active */
div.customenu_layout_default div.customenu_default a span.link_active {
   background-position: 50% -80px;
}

/* LAYOUT */

div.customenu_layout_default div.customenu_default {
}

div.customenu_layout_default div.customenu_default,
div.customenu_layout_default div.customenu_default a,
div.customenu_layout_default div.customenu_default span {
   margin: 0;
   padding: 0;
}

div.customenu_layout_default div.customenu_default a span {
   float: left;
   height: 30px; /* height - padding */
   padding: 10px 10px 0 10px;
   /* width: 250px; */ /* for fixed widths */
   text-align: center;
   cursor: pointer;
   border-right: 1px solid #000000;
}

div.customenu_layout_default div.customenu_default a,
div.customenu_layout_default div.customenu_default a:hover,
div.customenu_layout_default div.customenu_default a span {
   line-height: 1em;
   font-size: 18px;
   font-weight: normal;
   text-decoration: none;
   color: #FFFFFF;
   outline: 0;
   display: inline-block; /* NEEDED FOR IE ON MAC */
}
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #21 : 18.06.2012, 18:02:56 »
ну так судя по таблице стилей в модуле нет списка

чего вы ждали от стиля ul{list-style:upper-roman}
если модуле нет тега ul?

для того чтобы делать нумерованный список, надо чтобы список был.

выведите меню через стандартный модуль меню, оно списками выводит,
либо в шаблоне этого модуля, приведите вид к списку
« Последнее редактирование: 18.06.2012, 18:19:35 от hooten »
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #22 : 18.06.2012, 18:20:33 »
ну так судя по таблице стилей в модуле нет списка

чего вы ждали от стиля ul{list-style:upper-roman}
если модуле нет тега ul?

для того чтобы делать нумерованный список, надо чтобы список был.

выведите меню через стандартный модуль меню, оно списками выводит,
либо в шаблоне этого модуля, приведите вид к списку
Век живи - век учись. ^-^ Я считал, что главное отличие - один нумерованный, другой простой. А декораторы типа кружочков/точечег - дело десятое уже. И, потом, у нумерованного списка есть свои проблемы со вложенностью. ТС как раз меню делает, как понял, многоуровневое. Тут или JS или  PHP надо юзать.
Так ну значит я правильно все делал.
Пробовал в шаблоне сайта прописать ol.{list-style-type:upper-roman} Что бы проверить, все работает но это получается когда я заключаю текст в <ol> через редактор.  Что правильно. Но когда я это прописываю в модуле не чего не работает что тоже правильно в <ol> я же не чего не заключал.  Значит проблема не решена. Я создал новый модуль состоит из нескольких файлов один из них menu.css  когда я прописал там ol.{list-style-type:upper-roman и проверил этот код через Firebug  на сайте я его там не увидел.  По идеи мне нужно создать простейшее меню из 5 разделов без подкатегорий.  И можете пожалуйста более популярно объяснить как же мне заставить автоматически нумеровать.

А ну примерно это я и мел виду а как же мне его добавить.
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #23 : 18.06.2012, 18:35:49 »
еще раз, дайте код модуля. который выводит это меню
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Нумерация строк в меню.
« Ответ #24 : 18.06.2012, 18:38:04 »
mif2008, да тут оба варианта правильные. Просто я за php, hooten за CSS.
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #25 : 18.06.2012, 18:41:36 »
еще раз, дайте код модуля. который выводит это меню
Если я ставлю в настройках модуля вертикальное меню то подключается стиль
/**
 * Stylesheet: default
 *
 * @package         CustoMenu
 * @version         3.1.1
 *
 * @author         Peter van Westen <peter@nonumber.nl>
 * @link         http://www.nonumber.nl
 * @copyright      Copyright В© 2012 NoNumber All Rights Reserved
 * @license         http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
 */

/* BACKGROUNDS */

/* DEFAULT */
div.customenu_layout_default div.customenu_default a span {
   background: transparent url(../images/menu_button.png) repeat-x 50% 0;
}

/* DEFAULT: hover */
div.customenu_layout_default div.customenu_default a span.link_hover {
   background-position: 50% -40px;
}
div.customenu_layout_default div.customenu_default a span.ul {
   ist-style-type: upper-roman;

}

/* DEFAULT: active */
div.customenu_layout_default div.customenu_default a span.link_active {
   background-position: 50% -80px;
}

/* LAYOUT */

div.customenu_layout_default div.customenu_default {
}

div.customenu_layout_default div.customenu_default,
div.customenu_layout_default div.customenu_default a,
div.customenu_layout_default div.customenu_default span {
   margin: 0;
   padding: 0;
}

div.customenu_layout_default div.customenu_default a span {
   float: left;
   height: 30px; /* height - padding */
   padding: 10px 10px 0 10px;
   /* width: 250px; */ /* for fixed widths */
   text-align: center;
   cursor: pointer;
   border-right: 1px solid #000000;
}

div.customenu_layout_default div.customenu_default a,
div.customenu_layout_default div.customenu_default a:hover,
div.customenu_layout_default div.customenu_default a span {
   line-height: 1em;
   font-size: 18px;
   font-weight: normal;
   text-decoration: none;
   color: #FFFFFF;
   outline: 0;
   display: inline-block; /* NEEDED FOR IE ON MAC */
}

/* OVERRIDE */
/* Overide any stuff you want per menu item
 * Things like backgrounds, widths, heights, etc.
 * You can do this for any count of items
 */
div.customenu_layout_default div.customenu_default a.link_1 span {
}
div.customenu_layout_default div.customenu_default a.link_2 span {
}
div.customenu_layout_default div.customenu_default a.link_3 span {
}
div.customenu_layout_default div.customenu_default a.link_4 span {
}

/* OVERRIDE: normal */
div.customenu_layout_default div.customenu_default a.link_1 span.link_normal {
}
div.customenu_layout_default div.customenu_default a.link_2 span.link_normal {
}
div.customenu_layout_default div.customenu_default a.link_3 span.link_normal {
}
div.customenu_layout_default div.customenu_default a.link_4 span.link_normal {
}

/* OVERRIDE: hover */
div.customenu_layout_default div.customenu_default a.link_1 span.link_hover {
}
div.customenu_layout_default div.customenu_default a.link_2 span.link_hover {
}
div.customenu_layout_default div.customenu_default a.link_3 span.link_hover {
}
div.customenu_layout_default div.customenu_default a.link_4 span.link_hover {
}

/* OVERRIDE: active */
div.customenu_layout_default div.customenu_default a.link_1 span.link_active {
}
div.customenu_layout_default div.customenu_default a.link_2 span.link_active {
}
div.customenu_layout_default div.customenu_default a.link_3 span.link_active {
}
div.customenu_layout_default div.customenu_default a.link_4 span.link_active {
}
div.customenu_layout_default div.customenu_default a span.ul
  {list-style:upper-roman !important;}

А если скажем лист  то не какой но показывает цифры как я хотел ну только везде.
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #26 : 18.06.2012, 18:45:25 »
mif2008, да тут оба варианта правильные. Просто я за php, hooten за CSS.
Да я же говорю в php не чего не понимаю в принципе. Я как понимаю стандартное меню Joomla построено на нем. И если визуально на стандартном модуле покажите что куда это могло бы сильно помочь. А так понять не магу.
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #27 : 18.06.2012, 18:45:38 »
Просто я за php, hooten за CSS.
Да мне то всё равно) думал список есть уже.
Просили то при помощи стилей.
*

hooten

  • Захожу иногда
  • 443
  • 26 / 0
Re: Нумерация строк в меню.
« Ответ #28 : 18.06.2012, 18:50:52 »
mif2008, да не стили мне нужны) код вывода, хтмл.

Сделайте лист, вобщем чтобы был тег <ul>, и уберите из стилей то, что до этого там написали, для "показывает цифры как я хотел ну только везде."
В настройках модуля можете написать, что нибуть в поле суфикс модуля, number_list например, данный суфикс будет класом одного из родителей меню(или частью класса).
Ctrl+U в браузере, и скопируйте сюда блок кода который, отвечает за это меню(начиная с тега, в классе которого присутствует суфикс данного модуля, если он есть), типа этого:
<div class="menu_suffix">
<ul class="menu">
<li><a href="/stati">Статьи</a></li>
<li><a href="/vakansii">Вакансии</a></li>
<li><a href="/kontakty">Контакты</a></li>
</ul>
</div>

ЗЫ там оказывается даже id самого списка указывать можно, так даже проще.
« Последнее редактирование: 18.06.2012, 19:02:09 от hooten »
*

mif2008

  • Захожу иногда
  • 57
  • 0 / 0
Re: Нумерация строк в меню.
« Ответ #29 : 26.06.2012, 11:02:03 »
mif2008, да не стили мне нужны) код вывода, хтмл.

Сделайте лист, вобщем чтобы был тег <ul>, и уберите из стилей то, что до этого там написали, для "показывает цифры как я хотел ну только везде."
В настройках модуля можете написать, что нибуть в поле суфикс модуля, number_list например, данный суфикс будет класом одного из родителей меню(или частью класса).
Ctrl+U в браузере, и скопируйте сюда блок кода который, отвечает за это меню(начиная с тега, в классе которого присутствует суфикс данного модуля, если он есть), типа этого:
<div class="menu_suffix">
<ul class="menu">
<li><a href="/stati">Статьи</a></li>
<li><a href="/vakansii">Вакансии</a></li>
<li><a href="/kontakty">Контакты</a></li>
</ul>
</div>

ЗЫ там оказывается даже id самого списка указывать можно, так даже проще.
Привет извините что не ответил к чему же я пришел. Уезжал. На самом деле времени мало было. И пришел к выводу что к модулю я вернусь позже когда все более тщательно изучу. А на данный момент воспользовался немного советом. И просто воспользовался модулем Joomla mod_moedesigns_anycode_15 и прописал там это.
</div>
<div id="menu2">
<table style="width: 200px; height: 406px;" border="0" bordercolor="#FF0000" bgcolor="#ffffcc" background="/images/left.jpg">
<tbody>
<td>
<ul>
<li><a href="..............." title="...................">..................</a></li>
<li><a href="......................" title="....................">............</a></li>
<li><a href="......................" title=".....................">......................</a></li>
<li><a href="........................." title="......................">.......................</a></li>
<li><a href=".........................." title=".........................................">..............................</a></li>
</ul>
</tr>
</tbody>
</table>
</div>
Ну остальное вывел через CSS и все вроде как работает отлично. Но все равно осталось чувство не законченности. Спасибо всем. Честно говоря это наверное первая моя тема где реально я почувствовал помощь.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

убрать из меню заголовки h3

Автор nexter

Ответов: 19
Просмотров: 6456
Последний ответ 03.02.2020, 18:49:47
от durte
При добавлении нового пункта меню не отображается содержимое

Автор Denko

Ответов: 2
Просмотров: 2133
Последний ответ 16.01.2020, 18:40:55
от Denko
Не нажимается пункт меню на мобильной версии

Автор Sensession

Ответов: 7
Просмотров: 3081
Последний ответ 04.01.2020, 16:45:27
от xpank
Не отображаются пункты в меню

Автор physic

Ответов: 20
Просмотров: 21373
Последний ответ 20.09.2019, 16:54:01
от beliyadm
Как в ARI Ext Menu добиться работы параметра "Показать в меню"?

Автор vasmed

Ответов: 1
Просмотров: 2345
Последний ответ 01.03.2019, 11:12:18
от vasmed