2017-02-02 5 views
0

Ich benutze die asp.net Menüsteuerung. Abhängig von den Benutzerrechten setze ich einige Elemente im Menü auf selectable = false. So asp.net nimmt die Verbindung weg, cool. Aber ich möchte es offensichtlich visuell anders machen, z.B. ausgegraut. d. h., ich hätte gerne einen anderen CSS-Stil für auswählbare = echte Elemente im Vergleich zu auswählbaren = falschen Elementen. Gibt es eine Möglichkeit, dies zu tun? Ich sehe keine Option dafür.Wie man einen Stil auf ein asp.net Menü anwendet, wenn das Element auswählbar ist = false

+0

Können Sie die CSS-Klasse für die Behinderte untersuchen, wenn sie rendern? Ich bin sicher, dass es eine Regel gibt, die Sie basierend darauf hinzufügen können, um sie nach Ihren Wünschen zu unterscheiden. – Seano666

+0

Ist 'auswählbar' als Attribut in Ihrem Menüpunkt hinzugefügt? Ihre Frage benötigt mehr Details darüber, wie Sie mit diesem Teil und dem daraus resultierenden Markup umgehen. – Ricky

+0

@ricky Das asp Menü Steuerelement hat eine Eigenschaft von "auswählbar". Es wird kein Attribut des HTML. Einstellung wählbar für falsche Ergebnisse in der href wird nicht gesetzt. – Jay

Antwort

1

Finden Sie einfach die Links, die keine '#' href in CSS haben.

<style> 
     .MenuExample a:not([href='#']) { 
      background-color: red !important; 
     } 
    </style>  
<asp:Menu ID="Menu1" runat="server" StaticDisplayLevels="3" CssClass="MenuExample"> 
      <Items> 
      <asp:MenuItem Text="File" Value="File"> 
       <asp:MenuItem Text="New" Value="New"></asp:MenuItem> 
       <asp:MenuItem Text="Open" Value="Open" Selectable="false"></asp:MenuItem> 
      </asp:MenuItem> 
      <asp:MenuItem Text="Edit" Value="Edit"> 
       <asp:MenuItem Text="Copy" Value="Copy"></asp:MenuItem> 
       <asp:MenuItem Text="Paste" Value="Paste"></asp:MenuItem> 
      </asp:MenuItem> 
      <asp:MenuItem Text="View" Value="View"> 
       <asp:MenuItem Text="Normal" Value="Normal"></asp:MenuItem> 
       <asp:MenuItem Text="Preview" Value="Preview"></asp:MenuItem> 
      </asp:MenuItem> 
      </Items> 
     </asp:Menu>] 
+0

Das hat grundsätzlich funktioniert. Ich endete mit ": nicht ([href]), um nicht-ein-Popup und nicht-ein-Link zu bekommen, aber ja. – Jay

Verwandte Themen