Показано с 1 по 6 из 6

Тема: Облако тегов с выпадающим меню

  1. #1

    Регистрация
    30.03.2009
    Адрес
    Санкт-Петербург
    Сообщений
    94

    Подскажите, можно ли это сверстать? Если можно, дайте на водку
    [attachment=8467:menu.jpg]
    Поясню: ряд ссылок представлен в виде облака тегов. Почти у каждого пункта есть подменю, раскрывающееся по наведению курсора.
    Я решил сверстать само облако с помощью списка, у элементов которого "float: left". Но это не принципиально.
    Код:
    • ****<li class="size5">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size3">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size1">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size2">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size5">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size2">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size4">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size5">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size4">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size2">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size2">[Только зарегистрированные пользователи могут видеть ссылки. ] ****<li class="size2">[Только зарегистрированные пользователи могут видеть ссылки. ]

  2. #2

    Регистрация
    15.11.2006
    Адрес
    Тольятти
    Сообщений
    2,698
    Подскажите, можно ли это сверстать?
    Можно.

    Если можно, дайте на водку
    Оформляйте все подменю как и положено (с помощью вложенных списков). Затем абсолютно позиционируйте эти вложенные списки относительно родительских пунктов. Вот и вся наводка.

  3. #3

    Регистрация
    30.03.2009
    Адрес
    Санкт-Петербург
    Сообщений
    94
    Благодарю за наводку.
    В IE 7.0 возник глюк из-за z-index. Если коротко, то объект с абсолютным позиционированием (position: absolute) внутри объекта с относительным позиционированием (position: relative) перекрывается другими объектами с относительным позиционированием (другими пунктами меню). И z-index не помогает.

    [attachment=8468:menu2.jpg]

    Полазив по инету и весьма подумав, решил с помощью яваскриптов динамически уменьшать z-index у неактивных пунктов меню и увеличивать у активного.
    Вот так скрипт выглядит с использованием библиотеки jquery:

    Код:
    $(document).ready(function(){
    ****$("#menu ul li").mouseover(function(){
    ********$(this).addClass("over");
    ********
    ********// z-index for IE:
    ********$("#menu ul li").css("z-index", 400);
    ********$(this).css("z-index", 500);
    ****});
    ****$("#menu ul li").mouseout(function(){
    ********$(this).removeClass("over");
    ****});
    });
    Благодаря этому, меню вывелось поверх прочих элементов... но ишак униматься не хотел ) При движении курсора мышки по выпавшему меню начинается мерцание, явно указывающее на то, что z-index всё ещё глючит. Посмотреть можно [Только зарегистрированные пользователи могут видеть ссылки. ]. Ликвидировать мерцание не удалось. Выручайте.

  4. #4

    Регистрация
    15.11.2006
    Адрес
    Тольятти
    Сообщений
    2,698
    но ишак униматься не хотел )
    На то он и ишак)

    Mouseenter и mouseleave Вам в помощь (вместо mouseover и mouseout).

    P.S.

    Для нормальных браузеров, когда не требуется какая-нибудь анимация (например, плавное изменение прозрачности при отображении подменю или какое-нибудь его «выезжание/заезжание»), можно вполне обойтись без использования jQuery. Т.е. подобные задачи решаются исключительно с помощью CSS. Например:

    Код:
    ul li ul {display: none;}
    ul li:hover ul {display: block;}

  5. #5

    Регистрация
    30.03.2009
    Адрес
    Санкт-Петербург
    Сообщений
    94
    Супер! Работает. Не думал, что IE поймёт. Спасибо вам.
    Для ишака пришлось добавить в стили увеличение z-index:

    Код:
    ul li:hover {
    ****z-index: 400;
    }
    Не понадобились даже mouseenter и mouseleave.

  6. #6

    Регистрация
    15.11.2006
    Адрес
    Тольятти
    Сообщений
    2,698
    Аминь.

Похожие темы

  1. Облако тегов
    от Real_Kas в разделе Веб-программирование
    Ответов: 1
    Последнее сообщение: 09.11.2007, 17:50
  2. использование стандартных тегов font внутри дива
    от Грин в разделе Вёрстка сайта
    Ответов: 9
    Последнее сообщение: 27.09.2007, 02:47
  3. перенос при использовании тегов h1-h6
    от sydexx в разделе Вёрстка сайта
    Ответов: 7
    Последнее сообщение: 24.05.2007, 22:58
  4. css меню
    от bacteriophage в разделе Вёрстка сайта
    Ответов: 7
    Последнее сообщение: 11.03.2007, 21:52
  5. Кто поможет с выпадающим меню!
    от nezl в разделе Веб-программирование
    Ответов: 3
    Последнее сообщение: 15.11.2006, 21:38

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •