Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Динамическая подменна менюшки с помощью asp:Menu


Автор: alexburzak 6.4.2009, 17:10
Нарисовал две картинки(static.gif and staticHover.gif)
Поставил стандартный контрол на страницу – asp:Menu.
Прописал Стили для этого контрола (в моем случаи item + menu + menuHover)
Все работает, НО возле ссылки есть область которая как бы повторяет файл который я подменяю. Обвел это красным цветом (файл hover.jpg). И это нужно убрать. Плиз гляньте, в чем моя ошибка. Такое впечатление, что вставляется два раза. Что можно сделать, что бы подменялся файл ЧИСТО, так что бы вставлялось только одно изображение???
Code asp.net:
Код

        <asp:Menu ID="mMenu" runat="server" StaticMenuItemStyle-CssClass="item" StaticMenuStyle-CssClass="menu" StaticHoverStyle-CssClass="menuHover">
            <Items>
                <asp:MenuItem Value="1111" Text="aaaa"></asp:MenuItem>
                <asp:MenuItem Value="2222" Text="bbbb"></asp:MenuItem>
                <asp:MenuItem Value="3333" Text="cccc"></asp:MenuItem>
                <asp:MenuItem Value="4444" Text="dddd"></asp:MenuItem>
            </Items>
        </asp:Menu>

Code CSS:
Код

.item
{
    width:151px;
    height:28px;
}
.menu
{
    background-image:url(static.gif);
}
.menuHover
{
    background-image:url(staticHover.gif);
}

Файлы приатачил.

Автор: alexburzak 6.4.2009, 17:11
ststic.gif

Автор: alexburzak 6.4.2009, 17:12
staticHover.gif

Автор: SLeN 6.4.2009, 20:35
Код

    <div id="menu">
        <asp:Menu ID="Menu" runat="server">
            <StaticMenuItemStyle CssClass="Item" />
            <StaticSelectedStyle CssClass="ItemSelected" />
            <StaticHoverStyle CssClass="ItemHover" />
            <Items>
                <asp:MenuItem Value="1111" Text="aaaa"></asp:MenuItem>
                <asp:MenuItem Value="2222" Text="bbbb"></asp:MenuItem>
                <asp:MenuItem Value="3333" Text="cccc"></asp:MenuItem>
                <asp:MenuItem Value="4444" Text="dddd"></asp:MenuItem>
            </Items>
        </asp:Menu>
    </div>


Код

#menu{ /* nothing in here right now */
}

#menu .Item
{
  /* CSS class for non-selected Menu Item */
  background: url(static.gif) no-repeat;
  width:151px;
  height:28px;
}

#menu .ItemSelected, #menu .ItemHover
{
  /* CSS class for hovering and selected Menu Item
     ... which can be split up, of course! */
  background: url(staticHover.gif) no-repeat;
}

/* CSS classes for standard Links, only valid inside the #menu DIV */
#menu a, #menu a:visited
{
  background: transparent ! important;
  display: block;
}

#menu a:hover, #menu a:active, #menu a:focus
{
  background: transparent ! important;
  display: block;
}


Источник - http://forums.asp.net/p/1052310/1489454.aspx#1489454

Автор: alexburzak 7.4.2009, 11:27
 smile  smile  smile  smile 
Огромное тзеникс, то что было нужно.
Исправил у себя.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)