0

我可以使用将 CSS 样式应用于 html 链接

<link href="css/style.css" rel="stylesheet" type="text/css" />
<a href="/members/Default.aspx" id="loginCss">Login</a>

是否可以将相同的 CSS 样式 id loginCSS 应用于以下控件?

    <div class="buttonCSS">
        <asp:HyperLink ID="HyperLink1" runat="server" 
        NavigateUrl="~/Admin/Default.aspx" >Login as Admin</asp:HyperLink>
    </div>

我试过以下

<asp:HyperLink ID="loginCss" runat="server" 
NavigateUrl="~/Members/Default.aspx" >Login as Member</asp:HyperLink>

这给出了错误'loginCSS' is not a valid identifier.

4

5 回答 5

3

在你的 CSS 中,我猜你有一个基于控件名称的样式:

#loginCss{

   //Your styles here

}

如果您将其更改为基于类名:

.NewLoginCss{

   //Your styles here

 }

您可以使用 .NETCssClass和 HTMLclass属性在多个位置引用它:

<a href="/members/Default.aspx" id="loginCss" class="NewLoginCss">Login</a>

<asp:HyperLink ID="loginCss" runat="server" 
     NavigateUrl="~/Members/Default.aspx" 
     CssClass="NewLoginCss">Login as Member</asp:HyperLink>
于 2013-08-06T16:04:54.813 回答
3

在处理 .NET Web 控件时,您可能希望避免使用 ID,因为 ID 最终看起来像:ct100_blahblah_controlName_blahblah

所以只需使用超链接控件中的 CssClass 属性:

<asp:Hyperlink ID="hyp1" CssClass="className" />

你的 CSS 将是:

.className { color: FFF; }
于 2013-08-06T16:04:56.107 回答
1

我相信 ID 在旧版本的 .NET 中是相当保留的,这就是为什么许多后端开发人员更喜欢他们的前端伙伴使用 css 类。

您可以查看如何将这些应用于您的元素,但我相信它CssClass="classname"

<asp:HyperLink ID="" CssClass="loginCss" runat="server" 
NavigateUrl="~/Members/Default.aspx" >Login as Member</asp:HyperLink>
于 2013-08-06T16:01:42.033 回答
1

当您添加“runat='server'”时,所有 id 都将添加 ContentPlaceHolder_

因此,如果您在服务器端之前的 id 是“bla”,它将是“ContentPlaceHolder_bla”,这就是您应该用于客户端选择器的名称。从服务器端,元素仍然可以通过旧名称使用。

于 2013-08-06T16:06:57.000 回答
0

两个 ASP.Net 控件的 ID 不能相同。还有其他方法可以实现您的目标。更好的方法是使用 CssClass 属性。

于 2013-08-06T16:05:56.060 回答