Как мне применить css к пунктам меню второго уровня?

StackOverflow https://stackoverflow.com/questions/125612

  •  02-07-2019
  •  | 
  •  

Вопрос

У меня есть меню, исходящее из sitemap, один из SiteMapNode которого выглядит следующим образом:

<siteMapNode title="Gear" description="" url="">
  <siteMapNode title="Armor" description="" url="~/Armor.aspx" />
  <siteMapNode title="Weapons" description="" url="~/Weapons.aspx" />
</siteMapNode>

У меня также есть скин, примененный к asp:menu, который использует следующее определение css:

.nav-bar {
  z-index: 2;
  margin-top: -5%;
  position: absolute;
  top: 281px;
  font-family: Jokewood;
  font-style: italic;
}  

Когда я запускаю веб-сайт и наведу курсор мыши на ссылку Gear, шрифт Jokewood не применяется к этим предметам, как я могу применить css к названиям брони и оружия?

Обновить
Я должен был упомянуть, что шрифт отображается корректно на всех не вложенных узлах siteMapNodes.

Это было полезно?

Решение

Вы должны привязать подобные стили (как для статических, так и для динамических пунктов меню):

<asp:Menu ID="Menu1" runat="server" >
    <StaticMenuStyle CssClass="nav-bar" />
    <DynamicMenuStyle CssClass="nav-bar" />
</asp:Menu>

Другие советы

вы можете вложить CSS-команды, перечислив их последовательно

SiteMapNode SiteMapNode { ....css - код ...} будет применен к внутреннему узлу.

например,

#меню ul ul { ...}

было бы применено к
<ul> <-- не здесь
<li>
</li>
</ul>
<div id="menu">
<ul> <-- не здесь
<ul> <---- здесь

Firefox's Веб -разработчик (https://addons.mozilla.org/en-US/firefox/addon/60) аддон является хорошей альтернативой / компаньоном firebug.Это проще в использовании для отладки CSS (ИМО)

Скин наносится с помощью шаблона .skin.

<asp:Menu runat="server" CssClass="nav-bar" />
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top