asp: MenuItem / CSS - PullRequest
       7

asp: MenuItem / CSS

2 голосов
/ 17 июня 2011

У меня есть меню asp, только с 1 (верхним) уровнем пунктов меню. Каждый из пунктов меню должен иметь свой способ распознавания CSS (для уникального наведения и т. Д.). Я пытаюсь избежать решения JavaScript.

В настоящее время я не могу найти способ с помощью asp и CSS управлять отдельными пунктами меню. Любая помощь будет оценена!

<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false"
                    IncludeStyleBlock="false" Orientation="Horizontal">

    <Items>
        <asp:MenuItem NavigateUrl="~/Default.aspx" Text="My Tab" />
        <asp:MenuItem NavigateUrl="foo.aspx" Text="etc" />
    </Items>
</asp:Menu>

1 Ответ

1 голос
/ 17 июня 2011

Допустим, у вас есть

<ul class="menu">
<li><a href="#foo1">First Item</a></li>
<li><a href="#foo2">Second Item</a></li>
<li><a href="#foo3">Third Item</a></li>
<li><a href="#foo4">Fourth Item</a></li>
<li><a href="#foo5">Fifth Item</a></li>
</ul>

Если вы хотите использовать селектор атрибута, вы должны сделать как

ul.menu>li>a[href="foo1"]:hover
{
background-color: blue;
}

Если вы хотите использовать псевдокласс, вы должны сделатьas

ul.menu>li:nth-child(1)>a:hover
{
background-color: blue;
}

Если вы хотите использовать class или id, просто добавьте требуемый класс или ID в li в HTML и просто используйте

ul.menu>li.class_name>a:hover /*class used*/
{
background-color: blue;
}

ul.menu>li.id_name>a:hover /*id used*/
{
background-color: blue;
}

Возможно, вам не нужен селектор длябудьте точны, как указано выше, и можете не указывать ul и другие.Это только для примера.Помните, что псевдо-класс и селектор атрибутов имеют различную поддержку в разных браузерах.

...