проблема с меню Topic is solved

Обсуждение CMS Made Simple в России.

Moderators: iturbay, wdwp

Post Reply
nops

проблема с меню

Post by nops »

Друзья!
давно не делал ничего на CMSMS, вот снова представилась возможность.
Вот проблем встает с меню.
Значит на верстке так выглядит графически:
Image
код слежующий
html(тут только 2 пункта отражено):

Code: Select all

				<ul id="menu">
					<li><a class="active" href="/Volumes/Lion/Users/nops/Documents/Новоуральская газета/Index.html">Главная</a></li>
					<li><span>::</span></li>
					<li><a href="#">Контакты</a></li>
				</ul>

CSS:

Code: Select all

#menu {
	margin:0;
	padding:0;
	list-style-type:none;
	height:20px;
	width: 1010px;
	background: url(images/menu.jpg) repeat;
	font-size:14px;
	font-weight: bold;
	color: #fff;
	text-transform: uppercase;
	font-family:Courier New,Arial,Verdana,Helvitica,sans-serif;
}
    
#menu li {
	display: block;
	height: 100%;
	float: left;
}
    
#menu li a {
	display: block;
	height: 100%;
	color: #fff;
	text-decoration: none;
	padding: 2px 10px;
}
    
#menu li a:hover {
	border-bottom: 3px #f4b9b6 solid;
}

#menu li a.active {
	border-bottom: 3px #dc170c solid;
}
    
#menu li a span {
	background-color: #dc170c;
	padding: 5px 10px;
	height: 80%;
}
CSS-стили по сайту работаеют в целом, а вот меню выводится так:
Image
в шаблоне сделал вывод меню так:

Code: Select all

				<ul id="menu">
					{menu template="cssmenu.tpl"}
				</ul>
Пробовал вставить просто {menu}, но результат один и тот же.
Подскажите, что я не так делаю или сделал?
proton
Forum Members
Forum Members
Posts: 26
Joined: Wed May 02, 2012 3:21 pm

Re: проблема с меню

Post by proton »

Мои небольшие знания css подсказывают,что надо убрать display: block; и это должно убрать красные прямоугольники
nops

Re: проблема с меню

Post by nops »

proton wrote:Мои небольшие знания css подсказывают,что надо убрать display: block; и это должно убрать красные прямоугольники
нет.
не убирает...
User avatar
guro
Power Poster
Power Poster
Posts: 985
Joined: Thu Apr 26, 2012 8:38 pm

Re: проблема с меню

Post by guro »

Для начала приведите код шаблона меню "cssmenu.tpl"
nops

Re: проблема с меню

Post by nops »

guro wrote:Для начала приведите код шаблона меню "cssmenu.tpl"
Все, я подправил код, убрал лишние <span> и добавил <li> и все стадло нормально...
Всем спасибо...
Сейчас только встает вопрос.
Получилось у меня так:
Image
а мне надо, чтобы в конце не было двоеточия, только между пунктами.
Сейчас у меня создан новый шаблон, скопировал из стандартных и вот он получился:

Code: Select all

{* CSS classes used in this template:
#menuwrapper - The id for the <div> that the menu is wrapped in. Sets the width, background etc. for the menu.
#primary-nav - The id for the <ul>
.menuparent - The class for each <li> that has children.
.active - The class for each <li> that is active or is a parent (on any level) of a child that is active. *}

{assign var='number_of_levels' value=10000}
{if isset($menuparams.number_of_levels)}
  {assign var='number_of_levels' value=$menuparams.number_of_levels}
{/if}

{if $count > 0}
<ul id="menu">
{foreach from=$nodelist item=node}
{if $node->depth > $node->prevdepth}
{repeat string='<ul class="menu">' times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string='</li></ul>' times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}</li>
{/if}

{if $node->parent == true or $node->current == true}
  {assign var='classes' value='active'}
  {if $node->parent == true}
    {assign var='classes' value='active menuparent'}
  {/if}
  {if $node->children_exist == true and $node->depth < $number_of_levels}
    {assign var='classes' value=$classes|cat:' parent'}
  {/if}
  <li><a class="{$classes}" 
{elseif $node->type == 'sectionheader' and $node->haschildren == true}
  <li class="menuparent"><a class="menuparent"><span class="sectionheader">{$node->menutext}</span></a>
{elseif $node->type == 'sectionheader'}
  <li><a ><span class="sectionheader">{$node->menutext}</span></a>
{elseif $node->type == 'separator'}
  <li style="list-style-type: none;"> <hr class="menu_separator" />
{elseif $node->children_exist == true and $node->depth < $number_of_levels and $node->type != 'sectionheader' and $node->type != 'separator'}
  <li class="menuparent"><a class="menuparent" 
{else}
  <li>
  <a 
{/if}

{if ($node->type != 'sectionheader' and $node->type != 'separator') or $node->parent == true or $node->current == true }
 {if $node->target}target="{$node->target}" {/if}
href="{$node->url}">{$node->menutext}</a><li>:: </li>
{/if}
{/foreach}
{repeat string='></li</ul>' times=$node->depth-1}
</li>
</ul>
{/if}

User avatar
guro
Power Poster
Power Poster
Posts: 985
Joined: Thu Apr 26, 2012 8:38 pm

Re: проблема с меню

Post by guro »

Измените foreach следующим образом здесь

Code: Select all

{foreach from=$nodelist item=node name="ff"}
и здесь

Code: Select all

 {if $node->target}target="{$node->target}" {/if}
href="{$node->url}">{$node->menutext}</a>{if !$smarty.foreach.ff.last}<li>:: </li>{/if}
{/if}
{/foreach}
nops

Re: проблема с меню

Post by nops »

guro wrote:Измените foreach следующим образом здесь

Code: Select all

{foreach from=$nodelist item=node name="ff"}
и здесь

Code: Select all

 {if $node->target}target="{$node->target}" {/if}
href="{$node->url}">{$node->menutext}</a>{if !$smarty.foreach.ff.last}<li>:: </li>{/if}
{/if}
{/foreach}
спасибо большое. Получилось.
Post Reply

Return to “Russian - русский”