2013-08-06 2 views
0

я могу применить стиль CSS к HTML ссылке с помощьюПрименить стиль CSS для Asp содержания

<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.

ответ

3

В вашем CSS, я предполагаю, что у вас есть стиль, основанный на именах управления:

#loginCss{ 

    //Your styles here 

} 

Если вы измените его быть основано на имени класса:

.NewLoginCss{ 

    //Your styles here 

} 

вы можете ссылаться на него в Mult iple мест с использованием .NET CssClass и HTML class атрибуты:

<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> 
1

Я считаю, что идентификаторы будут довольно защищены в старых версиях .NET поэтому многие серверные разработчики предпочитают, чтобы их передние -end buddies вместо использования классов CSS.

Вы можете посмотреть, как применять те на своих элементов, но я считаю его CssClass="classname"

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

Вы, вероятно, хотите, чтобы избежать использования идентификаторов при работе с элементами управления .NET веб, как идентификаторы в конечном итоге выглядеть примерно так: ct100_blahblah_controlName_blahblah

Так просто использовать атрибут CssClass в контроле гиперссылок:

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

И ваш CSS будет:

.className { color: FFF; } 
0

У вас не может быть одинакового идентификатора двух элементов управления ASP.Net. Существуют и другие способы достижения вашей цели. Лучше использовать атрибут CssClass.

1

при добавлении «RUNAT =„сервер“» все идентификаторы будут предваряться ContentPlaceHolder_

так, если ур идентификатор перед тем стороне сервера был «бла» будет «ContentPlaceHolder_bla» и то имя ˙U следует использовать для селекторов на стороне клиента. со стороны сервера элементы по-прежнему будут доступны по старому имени.

+0

Это не очень хороший подход, особенно в случае Css, поскольку в этом случае может быть достаточно сложный вложенный держатель содержимого и id. –

+0

согласен. но это стандартная процедура для захвата идентификатора с клиентской стороны, если элемент управления работает на сервере. – Kirka121

Смежные вопросы