Wie bewerbe ich mich CSS zweiten Ebene Menüpunkte?
Frage
Ich habe ein Menü aus einer Sitemap ausgeführt, die eine der SiteMapNode wie folgt aussieht:
<siteMapNode title="Gear" description="" url="">
<siteMapNode title="Armor" description="" url="~/Armor.aspx" />
<siteMapNode title="Weapons" description="" url="~/Weapons.aspx" />
</siteMapNode>
Ich habe auch eine Haut, die auf die Asp: Menü, das die folgende CSS-Definition verwendet:
.nav-bar {
z-index: 2;
margin-top: -5%;
position: absolute;
top: 281px;
font-family: Jokewood;
font-style: italic;
}
Wenn ich die Website und Bewegen Sie den Cursor auf das Zahnrad Link ausführen, wird die Jokewood Schrift nicht auf diese Elemente angewendet, wie kann ich die CSS auf die Rüstung und Waffen Titel bewerben?
Aktualisieren
Ich erwähnte, von sollte, dass die Schriftart korrekt auf alle nicht-verschachtelten siteMapNodes angezeigt wird.
Lösung
Sie sollten Stile wie diese binden (für beide statische und dynamische Menüpunkte):
<asp:Menu ID="Menu1" runat="server" >
<StaticMenuStyle CssClass="nav-bar" />
<DynamicMenuStyle CssClass="nav-bar" />
</asp:Menu>
Andere Tipps
Sie können Nest CSS-Befehle, indem sie im Sequenzprotokoll
siteMapNode siteMapNode {.... CSS-Code ...} würde mit dem inneren Knoten angewandt werden.
zum Beispiel
#menu ul ul {...}
angewendet würde
- <- hier nicht
-
- <- hier nicht
- <---- hier
Firefox Web Developer ( https://addons.mozilla.org/en-US/firefox/addon/60 ) addon ist eine gute Alternative / Begleiter Firebug. Es ist einfacher für CSS-Debugging verwenden (IMO)
Die Haut durch eine .skin Vorlage angewendet wird.
<asp:Menu runat="server" CssClass="nav-bar" />