Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« : 03.04.2011, 00:11:42 » |
|
Как в шаблоне обозначить меню в определённой позиции (не расписывая li)? Т.е. как создать меню ul и его подпункты li, я поняла. Но, во всех примерах (которые изучала) li были расписаны на будущие пункты меню. А как в шаблоне обозначить меню кратко, чтобы li назначались через административную панель? Так или как? <div id="hmenu"> <ul id="topmenu"> <li> <jdoc:include type="modules" name="top" style="xhtml"/> </li> </div> </div>
|
|
|
|
|
Записан
|
|
|
|
|
Efanych
|
 |
« Ответ #1 : 03.04.2011, 00:23:19 » |
|
<div id="hmenu"> <ul id="topmenu"> <li> <jdoc:include type="modules" name="top" style="xhtml"/> </li> </div> </div>
Это точно неправильно. А вообще совершенно не понял, что Вы хотите сделать. Чтобы тег li не повторялся каждому пункту меню?
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #2 : 03.04.2011, 00:40:24 » |
|
<div id="hmenu"> <ul id="topmenu"> <li> <jdoc:include type="modules" name="top" style="xhtml"/> </li> </div> </div>
Это точно неправильно. А вообще совершенно не понял, что Вы хотите сделать. Чтобы тег li не повторялся каждому пункту меню?
да, чтобы не повторялся. во всех уроках на тему меню в файле index.php (для joomla) пункты меню расписывались по типу: <ul id="topmenu"> <li><a href="#">Главная</a></li> <li><a href="#">пункт 1</a> <ul> <li><a href="#">подпункт 1.1</a></li> <li><a href="#">подпункт 1.2</a></li> <li><a href="#">подпункт 1.3</a></li> </ul> </li> </ul>
Но ведь в index.php эту вышеуказанную надпись можно как то сокращённо написать. Чтобы вставлять меню через административную панель в определённую позицию, прописанную в определенном диве index.php
|
|
|
|
|
Записан
|
|
|
|
|
Efanych
|
 |
« Ответ #3 : 03.04.2011, 09:23:57 » |
|
Всё равно не понял ни хрена. Почитайте про списки. Так вообще-то задумано. li это элемент списка, и сколько этих элементов, столько и должно быть li. К примеру. Идёте вы в магазин. и составляете список: Купить: 1. хлеб, колбасу, муку, пиво, конфеты... Зачем тут эта единичка вообще?
|
|
|
|
« Последнее редактирование: 03.04.2011, 10:00:06 от Efanych »
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #4 : 03.04.2011, 11:39:58 » |
|
Всё равно не понял ни хрена. Почитайте про списки. Так вообще-то задумано. li это элемент списка, и сколько этих элементов, столько и должно быть li. К примеру. Идёте вы в магазин. и составляете список: Зачем тут эта единичка вообще?
В любом случае спасибо, что пытались помочь! Вот например, просматриваю я шаблоны для жумлы и в тех местах, где должно находиться меню ни разу не встречала расписывания на ul и li. Когда я пишу шаблон я ведь предполагаю, что верхнее меню может быть, а может не быть. Зачем же я его сразу распишу на пункты? Я потом эти пункты разве смогу редактировать и удалять через админпанель. или ещё больше путаницы нагородила?(
|
|
|
|
|
Записан
|
|
|
|
|
Efanych
|
 |
« Ответ #5 : 03.04.2011, 11:48:25 » |
|
Вот например, просматриваю я шаблоны для жумлы и в тех местах, где должно находиться меню ни разу не встречала расписывания на ul и li. Или вы неправильно смотрели, или мы друг друга не понимаем. ul и li прописываются для каждого пункта меню автоматом, это предусмотрено в самой структуре модуля. Если вы не будете выводить модуль там где он не нужен, то никаких ul и там не будет. Зачем же я его сразу распишу на пункты? Я потом эти пункты разве смогу редактировать и удалять через админпанель. Любые пункты добавляются и удаляются из админки и вместе с ними удаляютя li
|
|
|
|
|
Записан
|
|
|
|
|
al-teen
|
 |
« Ответ #6 : 03.04.2011, 11:49:54 » |
|
или ещё больше путаницы нагородила Вы четко можете сформулировать свой вопрос?
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #7 : 03.04.2011, 11:54:58 » |
|
Или вы неправильно смотрели, или мы друг друга не понимаем. ul и li прописываются для каждого пункта меню автоматом, это предусмотрено в самой структуре модуля. Если вы не будете выводить модуль там где он не нужен, то никаких ul и там не будет.Любые пункты добавляются и удаляются из админки и вместе с ними удаляютя li
Т. е. получается, что я в шаблоне для Joomla в файле index.php просто создаю в определённом месте div (и в нём с помощью <jdoc:include type="modules" name="top" style="xhtml"/> задаю некоторую позицию top). Вставлять меню и его пункты я буду через админпанель, но для того чтобы всё вставилось так как мне надо, я должна в файле template.css задать определённые свойства для ul и li в конкретном div? Так?
|
|
|
|
|
Записан
|
|
|
|
|
Efanych
|
 |
« Ответ #8 : 03.04.2011, 11:56:38 » |
|
Да!
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #9 : 03.04.2011, 11:57:56 » |
|
|
|
|
|
|
Записан
|
|
|
|
|
Mihanja80
|
 |
« Ответ #10 : 03.04.2011, 12:21:27 » |
|
и, наверное, лучше сразу писать со своим классом суффикса модуля  например: _topmenu
|
|
|
|
|
Записан
|
|
|
|
NightGuard
Группа развития
   
Репутация: +286/-43
Offline
Пол: 
Сообщений: 4616
За мной уже выехали
|
 |
« Ответ #11 : 03.04.2011, 12:25:32 » |
|
Пипец, жжоте! Всё сводится к выводу модуля меню (со стандартными настройками) в позицию. Далее при создании пунктов меню в админке, список выстраивается автоматически.
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #12 : 03.04.2011, 12:30:21 » |
|
и, наверное, лучше сразу писать со своим классом суффикса модуля  например: _topmenu а насчёт класса суффикса модуля можно поподробнее? "_topmenu" потому что в <jdoc:include type="modules" name="top" style="xhtml"/> прописано, что name="top"? вот например кусочек кода, в каком месте нужно суффикс отразить: #hmenu,#hmenu ul{ border:1px solid #000; border-bottom:0px; list-style:none; margin:0; padding:0; width:150px; font:12px Verdana, Arial, Helvetica, sans-serif; }
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #13 : 03.04.2011, 12:32:05 » |
|
Пипец, жжоте! Всё сводится к выводу модуля меню (со стандартными настройками) в позицию. Далее при создании пунктов меню в админке, список выстраивается автоматически.
новички редко задают вопросы, достойные внимания знатоков) все с чего то начинают и порой возникают действительно тупейшие вопросы, но без ответа на них сложно двигаться дальше
|
|
|
|
|
Записан
|
|
|
|
NightGuard
Группа развития
   
Репутация: +286/-43
Offline
Пол: 
Сообщений: 4616
За мной уже выехали
|
 |
« Ответ #14 : 03.04.2011, 12:43:38 » |
|
Если добавите суффикс, то у вас класс модуля с module изменится на module_topmenu, это например если два меню на сайте с разным оформлением.
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #15 : 03.04.2011, 13:11:45 » |
|
Если добавите суффикс, то у вас класс модуля с module изменится на module_topmenu, это например если два меню на сайте с разным оформлением.
Да, я хотела бы сделать два разных меню с разными оформлениями (горизонтальное и вертикальное). Немного полазила в Google, искала про суффиксы. Правильно ли я понимаю: 1. При создании меню через админ панель в Joomla я создаю стандартным способом модуль меню и в расширенных параметрах этого модуля, в строке суффикс класса модуля пишу суффикс например _topmenu 2. Для того, чтобы этот суффикс сработал, я должна в template.css при описании свойств для данного меню (расположенного в определённом диве) писать например так: #hmenu_topmenu,#hmenu_topmenu ul{ border:1px solid #000; border-bottom:0px; list-style:none; margin:0; padding:0; width:150px; font:12px Verdana, Arial, Helvetica, sans-serif; } Если у меня в позиции top будет расположен всегда только один вид горизонтального меню, а позиции left/right всегда один вид вертикального меню (разумеется не похожего на горизонтальное меню), то я могу обойтись без суффиксов, а просто указать свойства для ul и li в конкретных div (в которых заданы определённые позиции и оформление меню зависит от того в какой позиции оно выведено будет)?
|
|
|
|
|
Записан
|
|
|
|
NightGuard
Группа развития
   
Репутация: +286/-43
Offline
Пол: 
Сообщений: 4616
За мной уже выехали
|
 |
« Ответ #16 : 03.04.2011, 13:16:35 » |
|
Хмм... Поняли вы правильно, только смотреть стоит firebug'ом к каким классам привязываться будете. У вас ведь уба модуля будут иметь класс примерно - menu, т.е. посмотрите и если что, то для одного из меню добавьте суффикс и все.
|
|
|
|
|
Записан
|
|
|
|
|
al-teen
|
 |
« Ответ #17 : 03.04.2011, 13:20:07 » |
|
В такой ситуации больше приемлем плоский список(в настройках меню), стандартный модуль имеет на странице вид <ul id="menu"><li><a href=""><span>...</span></a></li></ul> То есть практически пустой набор, своеобразный пластелин. Просто блок меню вставьте в свой блок, например <div id="menuTop"><jdoc:include type="modules" name="top" style="xhtml"/></div> и далее в таблице стилей у вас будет привязка лишь к одному этому меню. #menuTop ul li{ float:left; list-style: none; ... } В общем обычная наследственная модель, где родительский элемент menuTop каждый раз указывается первым в описании
|
|
|
|
« Последнее редактирование: 03.04.2011, 13:23:27 от al-teen »
|
Записан
|
|
|
|
NightGuard
Группа развития
   
Репутация: +286/-43
Offline
Пол: 
Сообщений: 4616
За мной уже выехали
|
 |
« Ответ #18 : 03.04.2011, 13:23:43 » |
|
Кстати, таки да, вариант с собственным id тоже вполне подходит, он даже более оптимален если вы сами создаете шаблон.
|
|
|
|
|
Записан
|
|
|
|
Liana
Осваиваюсь на форуме
 
Репутация: +2/-0
Offline
Пол: 
Сообщений: 169
|
 |
« Ответ #19 : 03.04.2011, 13:25:43 » |
|
Efanych, NightGuard, al-teen
спасибо за помощь! Буду пробовать!
|
|
|
|
|
Записан
|
|
|
|
|