Jump to content
  • 0

Последний пункт меню


TeppopucT
 Share

Question

Здравствуйте! :) Я новенький! Не кричите на меня. Но очень хочется узнать у "знатоков", как говорится, как сделать стилями, чтобы последний пункт меню был без полосочки, которая приставляется ко всем предыдущим, стилем background-image. Скрин могу выслать! B) Заранее, благодарен!!! Уж очень надо!!!

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

HTML:

<ul>
<li class="menu">пункт</li>
<li class="menu">пункт</li>
<li class="menu">пункт</li>
<li class="menu">пункт</li>
<li class="menu">пункт</li>
<li class="menu last">последний пункт</li>
</ul>

CSS:

ul {
list-style: none;
}

ul .menu {
float: left;
background: red;
}

ul .last {
background: green;
}

Link to comment
Share on other sites

  • 0

Спасибо! :) А если меню собирается из массива?! Как определить последний? Что-то голова не варит каши!!! B) Спасибо, откликнувшимся!!! Это я с заделом на будущее. В общем, меню берется из массива, создаваемого в CMS...и мне надо чтобы последний пункт был без подчеркивания. Грубо говоря, мягко выражаясь - другим стилем.

Link to comment
Share on other sites

  • 0

Я уж не знаю как там у вас массив формируется и как он читается, но например на яваскрипте длинна массива считается на раз (array.length), соотвес=тственно последний элемент массива будет (array[array.length - 1])

Link to comment
Share on other sites

  • 0

А подскажите, как это звучит в ПХП?! :) Вы - умный!!!

<?if (!empty($arResult)):?>

<div class="menu-sitemap-tree">

<ul>

<?$previousLevel = 0;foreach($arResult as $arItem):?>

<?if ($previousLevel && $arItem["DEPTH_LEVEL"] < $previousLevel):?>

<?=str_repeat("</ul></li>", ($previousLevel - $arItem["DEPTH_LEVEL"]));?>

<?endif?>

<?if ($arItem["IS_PARENT"]):?>

<li class="close">

<div class="folder" onClick="OpenMenuNode(this)"></div>

<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>

<ul>

<?else:?>

<?if ($arItem["PERMISSION"] > "D"):?>

<li>

<div class="page"></div>

<div class="item-text"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>

</li>

<?endif?>

<?endif?>

<?$previousLevel = $arItem["DEPTH_LEVEL"];?>

<?endforeach?>

<?if ($previousLevel > 1)://close last item tags?>a

<?=str_repeat("</ul></li>", ($previousLevel-1) );?>

<?endif?>

</ul>

</div>

<?endif?>

———————————————————————————————--

вот мой шаблон меню! B))) как вычислить последний пункт?! ))))))

Link to comment
Share on other sites

  • 0

Это вам уже надо в ветку по PHP, я PHP уже сто лет не занимался - забыл все напрочь.

Кажись в PHP последний элемент можно получить так:

$num = count($array);
$last = $array[$num - 1];

Точнее не скажу.

Link to comment
Share on other sites

  • 0

Нашел ответ! B))) Вот так реализовал!!! Нашел на форуме у 1С-Битрикса! Код ниже, если кто-то столкнется, чтобы было откуда черпать "срочную" информацию! B)))

<?foreach($arResult as $key => $arItem):?>

<?if($arItem["SELECTED"]):?>

<div class="tr"><a href="<?=$arItem["LINK"]?>" class="selected"><?=$arItem["TEXT"]?></a></div>

<?else:?>

<div class="tr"><a href="<?=$arItem["LINK"]?>"><?=$arItem["TEXT"]?></a></div>

<?endif?>

<?if (sizeof($arResult) <> ($key+1)) echo '<hr class="menu-line">';?>

<?endforeach?>

Спасибо, всем!!! :) Вместе мы - СИЛА!!!

Тему закрывать или нет?! На суд Админов! B))

Link to comment
Share on other sites

  • 0

Привет Всем!

Вот парюсь пол дня, и не могу решить задачу.

есть меню в котором есть 2 первых пункта разделители а дальше нормальное меню со своей картинкой, к этой части вопросов нет.

Прикол в том что между разделителями надо поставить картинку с полосочкой. и увеличить размер между разделителями.

Link to comment
Share on other sites

  • 0
Привет Всем!

Вот парюсь пол дня, и не могу решить задачу.

есть меню в котором есть 2 первых пункта разделители а дальше нормальное меню со своей картинкой, к этой части вопросов нет.

Прикол в том что между разделителями надо поставить картинку с полосочкой. и увеличить размер между разделителями.

ну так в чём проблема? первому LI задаёшь класс, обращаешься к нему через CSS, и делаешь всё что хочешь уже, верхний отступ, там же фон и т. д.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy