Asp.net 在不覆盖css的情况下向LinkButton添加样式

Asp.net 在不覆盖css的情况下向LinkButton添加样式,asp.net,css,linkbutton,Asp.net,Css,Linkbutton,所以,如果我在.cs代码中向LinkButton添加背景色之类的样式,它会覆盖任何应用于它的css 有没有办法在我的代码隐藏中添加样式而不是替换它?谢谢 我使用链接按钮作为菜单,所以活动链接按钮应该有不同的背景色。 因此,我的解决方案是,当用户单击事件处理程序中的链接按钮时,我会执行以下操作: lnkView.BackColor = System.Drawing.Color.FromName("#369"); 但是我的css中的悬停样式将不再有效: .navlist a:hover {

所以,如果我在.cs代码中向LinkButton添加背景色之类的样式,它会覆盖任何应用于它的css

有没有办法在我的代码隐藏中添加样式而不是替换它?谢谢 我使用链接按钮作为菜单,所以活动链接按钮应该有不同的背景色。 因此,我的解决方案是,当用户单击事件处理程序中的链接按钮时,我会执行以下操作:

   lnkView.BackColor = System.Drawing.Color.FromName("#369");
但是我的css中的悬停样式将不再有效:

.navlist a:hover
{
    color: #fff;
    background-color: #369;
    text-decoration: none;
}
在我的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>
  • 看法
  • 创造新的

任何内联样式都将始终覆盖从文档或外部css文件头继承的任何样式。唯一的其他选择是添加javascript函数,该函数在DOM就绪或窗口就绪事件之后覆盖对象的样式。

任何内联样式都将始终覆盖从文档或外部css文件头继承的任何样式。唯一的其他选择是添加一个javascript函数,在DOM就绪或窗口就绪事件之后覆盖对象的样式。

编辑:您的问题不清楚,但您似乎对CSS理解错误。将
背景色
添加到
样式
属性不会导致它完全忽略任何CSS规则。相反,它将覆盖
background color
属性的任何CSS规则,但不会影响任何其他规则

如果您不想覆盖CSS规则中的
背景色
属性,请添加
!重要信息
标记到
中的CSS规则:悬停
,如下所示:

background-color: #369 !important;
另外,改变颜色,使变化可以被注意到

或者,您可以使用背景色为
.navlista:link.Active
添加新的CSS规则,然后在代码中添加
Active
类。(
lnkView.CssClass+=“活动”


顺便说一句,您应该编写
Color.FromName
,而不是调用
Color.FromArgb(0x33、0x66、0x99)
编辑:您的问题不清楚,但您似乎不理解CSS。将
背景色
添加到
样式
属性不会导致它完全忽略任何CSS规则。相反,它将覆盖
background color
属性的任何CSS规则,但不会影响任何其他规则

如果您不想覆盖CSS规则中的
背景色
属性,请添加
!重要信息
标记到
中的CSS规则:悬停
,如下所示:

background-color: #369 !important;
另外,改变颜色,使变化可以被注意到

或者,您可以使用背景色为
.navlista:link.Active
添加新的CSS规则,然后在代码中添加
Active
类。(
lnkView.CssClass+=“活动”


顺便说一句,您应该编写
Color.FromName
,而不是调用
Color.FromArgb(0x33、0x66、0x99)
,如果我正确理解您的要求,您希望根据链接按钮是否悬停在上方应用不同的样式吗?因此,既要有你的风格,又要有:

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

如果你想要第三种颜色,在链接被访问后,用
a:visted来定义它。
这就是你想要的吗

如果我正确理解了您的需求,您希望根据链接按钮是否悬停在其上方应用不同的样式吗?因此,既要有你的风格,又要有:

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

如果你想要第三种颜色,在链接被访问后,用
a:visted来定义它。
这就是你想要的吗

不确定您在这里的用途,因为您的问题不太清楚。然而,这也可能是一种选择

有两种css样式:

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

.navlist a:link
    {
        color: #fff;
        background-color: #123;
        text-decoration: none;
    }
然后,在代码隐藏中,只需切换CSSClass:

lnkbtn.CssClass = "navlistafteranaction";

这将改变类,使其在事后具有您想要的任何样式。

不确定您在这里的用途,因为您的问题并不清楚。然而,这也可能是一种选择

有两种css样式:

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

.navlist a:link
    {
        color: #fff;
        background-color: #123;
        text-decoration: none;
    }
然后,在代码隐藏中,只需切换CSSClass:

lnkbtn.CssClass = "navlistafteranaction";
这将改变类,使其在事后具有您想要的任何样式