大家好,我想将css
应用于<li>
标签,这是主页中动态显示的代码,这是我的设计
<div id="primary_nav">
<ul>
<li class="left active" id="nav_discussion" runat="server">
<a title="Go to Forums" href="">
Forums
</a>
</li>
<li class="left" id="nav_members" runat="server">
<a title="Go to Member List" href="Members.aspx">
Members
</a>
</li>
</ul>
</div>
在我的内容页面中,我访问了
<li>
,如下所示
Control li = Page.Master.FindControl("nav_members");
但是我无法应用所需css
这里有人可以帮助我
答案 0 :(得分:6)
在这种情况下,您的Control
类型为HtmlGenericControl
,但不包含CssClass
的属性。
您需要将控件转换为HtmlGenericControl类型。 e.g。
System.Web.UI.HtmlControls.HtmlGenericControl li = (System.Web.UI.HtmlControls.HtmlGenericControl) this.Page.Master.FindControl("nav_members");
然后,这将为您提供两种将样式应用于元素的选择。您可以使用Style
属性或Attributes
属性。
Style
属性允许您为元素添加内联样式,例如:
li.Style.Add("Color", "Black");
这将使元素呈现:
style="color:red;"
您的另一个选择是使用Attributes
属性,以便添加class
。
li.Attributes.Add("class", "nameofyourclass");
答案 1 :(得分:2)
如果找到控件,则使用以下命令添加css
Control li = Page.Master.FindControl("nav_members");
li .Style.Add("float", "left");
如果要覆盖某些属性,则可以使用
li .Style.Add("width", "100px !important");
等。这是一个很好的链接
What are the implications of using "!important" in CSS?
这是一个类似的问题 C# - How to change HTML elements attributes
您需要先将其转换为html通用控件
HtmlGenericControl li = (HtmlGenericControl)(Page.Master.FindControl("nav_members"));
li .Style.Add("width", "100px !important");
答案 2 :(得分:0)
尝试:
nav_members.Attributes.Add("class", value);