CSS ID选择器不起作用但类选择器不起作用

时间:2010-02-21 03:50:36

标签: asp.net css

我遇到的问题是当我使用“ID”选择器(#btnOK)时没有应用样式。但是,如果我使用类选择器(.btnOK,通过将“#btnOK”更改为CSS文件中的“.btnOK”),则应用样式。

知道为什么吗?样式IS也适用于设计模式,但不适用于运行时。它找到了css文件,否则,该类将不会被应用。区分大小写匹配ID。

在网页中:

<link href="CSS/CvCost.css" rel="stylesheet" type="text/css" />

<asp:Button ID="btnOK" CssClass="btnOK" runat="server" Text="OK" ValidationGroup="Add"/>

在CSS / CvCost.css中:

#btnOK{
    margin-right:5px;
    margin-top:5px;
    float:right;
    width:75px;
    height: 25px;
}

2 个答案:

答案 0 :(得分:3)

ASP.Net将根据元素的容器自动生成唯一ID。

您需要使用ASP.Net的实际ClientID 由于您无法在外部CSS文件中执行此操作,因此您应该只使用类选择器。

如果您使用的是ASP.Net 4,还可以将新的ClientIDMode属性设置为Static

答案 1 :(得分:1)

如果我没记错的话,在运行/调试代码时显示的ID与#btnOK不同。当代码运行时,VS将为其提供另一个ID。