Frage

So ist es aussieht, wenn ich Stil hinzufügen, wie Hintergrundfarbe zu Linkbutton in meinem .cs Code, es überschreibt jede CSS Ich habe, dass es gilt.

Gibt es eine Möglichkeit Stil hinzuzufügen, anstatt zu ersetzen es in meinem Code hinter? Vielen Dank! Ich bin mit Link-Taste als Menü, so aktiv linkbutton andere Hintergrundfarbe haben sollte. so meine Lösung war, als in meinem Ereignishandler der Benutzer klickt auf der Link-Taste kann ich so etwas wie:

   lnkView.BackColor = System.Drawing.Color.FromName("#369");

Aber dann meine Hover-Stil, die ich in meinem CSS haben nicht mehr funktionieren:

.navlist a:hover
{
    color: #fff;
    background-color: #369;
    text-decoration: none;
}

in meiner aspx:

<ul class="navlist">
        <li><asp:LinkButton ID="lnkView" runat="server">view</asp:LinkButton></li>
        <li><asp:LinkButton ID="lnkCreateNew" runat="server">create new</asp:LinkButton></li>
    </ul>
War es hilfreich?

Lösung

Bearbeiten : Ihre Frage ist nicht klar, aber Sie scheinen falsch verstehen CSS zu sein. Hinzufügen background-color zum style Eigenschaft wird nicht dazu führen Sie es vollständig in alle CSS-Regeln zu ignorieren. Vielmehr wird es keine CSS-Regeln für die background-color Eigenschaft außer Kraft setzen, aber keine anderen Regeln betreffen.

Wenn Sie nicht möchten, dass die background-color Eigenschaft aus der CSS-Regel außer Kraft zu setzen, fügen Sie die !important Flag an die CSS-Regel in :hover, wie folgt aus:

background-color: #369 !important;

Auch die Farbe ändern, so dass die Änderung noticable wil.

Alternativ können Sie eine neue CSS-Regel für .navlist a:link .Active mit Ihrer Hintergrundfarbe, fügen Sie dann die Active Klasse im Code. (lnkView.CssClass += "Active")

Durch die Art und Weise, anstatt Color.FromName aufzurufen, sollten Sie Color.FromArgb(0x33, 0x66, 0x99) schreiben.

Andere Tipps

Jede Inline-Stile werden immer außer Kraft setzen geerbt Stile aus dem Kopf eines Dokuments oder einer externen CSS-Datei. Die einzige andere Möglichkeit wäre, eine Javascript-Funktion, die überschreibt die Art des Objekts nach DOM bereit oder Fenster bereit Ereignisse hinzuzufügen.

Nicht sicher der Benutzung hier, wie Ihre Frage ist nicht wirklich klar. Allerdings könnte dies eine Option als gut.

Haben zwei CSS-Stile:

.navlistafteranaction a:link
    {
        color: #fff;
        background-color: #123;
        text-decoration: none;
    }

.navlist a:link
    {
        color: #fff;
        background-color: #123;
        text-decoration: none;
    }

Dann in Ihrem Code hinter wechseln Sie einfach Ihre CssClass:

lnkbtn.CssClass = "navlistafteranaction";

Dies würde die Klasse ändern, was auch immer Stil, den Sie nach der Tat haben wollten.

Wenn ich verstehe, was Sie richtig wollen, Sie wollen angewendet verschiedene Stile basierend auf, ob der Linkbutton schwebte über wird? So haben Sie den Stil Sie haben aber auch haben:

.navlist a:link
    {
        color: #fff;
        background-color: #123;
        text-decoration: none;
    }

Wenn Sie eine dritte Farbe wünschen, denn nach dem Link besucht wird, zu definieren, dass mit a:visited. Ist das, was Sie wollen?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top