Как переопределить курсор: текст в меню asp: для не кликабельных элементов? - PullRequest
3 голосов
/ 15 сентября 2009

У меня есть элемент управления меню на главной странице. Источником данных для меню является карта сайта.

E.g., 
       HOME
            Page1 (clickable)
            Page2
                SubPage1A (clickable)
                SubPage2B
                   SubPageSubPage1 (clickable)
                   SubPageSubPage2 (clickable)
            Page3
                SubPage1C (clickable)

Что я хочу сделать, это сделать кликабельными (я имею в виду, когда вы нажимаете на эту ссылку, вы переходите на какой-то URL) только страницы на нижнем уровне. Таким образом, из этого примера кликабельные страницы будут такими: Page1, SubPage1A, SubPageSubPage1, SubPageSubPage2 и SubPage1C.

Чтобы сделать другие страницы не кликабельными, я удалил атрибут "url" из карты сайта xml. На данный момент, когда я открываю страницу, я вижу курсор: стиль текста, назначенный для всех элементов, не активируемых нажатием (это «I»), и курсор: указатель (рука) для элементов, активируемых нажатием.

Я знаю, что могу управлять стилями курсора, назначая их для. Но это работает только для нескольких элементов в hiearchy. Но мне нужно иметь разные стили курсора на одном и том же уровне иерархии.

Есть ли способ переопределить курсор: стиль текста любым другим для элементов, не активируемых щелчком мыши, и сохранить курсор в виде руки для интерактивного нажатия?

Спасибо

1 Ответ

4 голосов
/ 22 марта 2011

Пункты меню с подменю отображаются в виде гиперссылки с href = "#". В CSS выберите эти гиперссылки, как показано ниже.

<asp:Menu ...>
    <StaticMenuItemStyle    CssClass="MenuItemClass" />
    <DynamicMenuItemStyle   CssClass="MenuItemClass" />
</asp:Menu>


a.MenuItemClass[href="#"]
{
    cursor: default !important;
}

Проверено на FF 3.6.15, Google Chrome 10, Safari 5.0.3, IE 8 и IE 8 в режиме IE7 в Windows 7.

...