<asp:BulletedList ID="BulletedList1" runat="server" DisplayMode="HyperLink" style="list-style :none" >
我正在将列表项动态添加到上面的项目符号列表中。如何为每个列表的 href 添加样式。
您可以传递 css-class 属性:
声明式:
<style>
class1 { text-decoration:none; font-weight:bold; color:#e00000; }
...
</style>
<asp:BulletedList ID="BulletedList1" DisplayMode="HyperLink" runat="server">
<asp:ListItem class="class1">a</asp:ListItem>
<asp:ListItem class="class2">b</asp:ListItem>
</asp:BulletedList>
以编程方式:
protected void Page_Load(object sender, EventArgs e)
{
ListItem listItem = new ListItem("c");
listItem.Attributes.Add("class", "class1");
BulletedList1.Items.Add(listItem);
}
如果您将列表项动态添加到 BulletList,那么您可以通过这种方式将样式添加到列表项的
listItem1.Attributes.Add("Class", "NameOfTheClass");
或者
listItem1.Attributes.Add("style", "YourInlineCss");
我已经通过添加一个 jQuery 选择器事件来解决这个问题。
$("<%=BulletedList1.ClientID%> li a").each(function() {
$(this).addClass('ClassName')
});
尝试这个:
文件.css:
.href a:link a:visited
{
color: Red;
}
.href a:hover
{
color: Yellow;
text-decoration: none;
}
.href a:active
{
color: Green;
}
代码.aspx:
<asp:BulletedList ID="BulletedList1" runat="server"
DataSourceID="SqlDataSource1" DataTextField="nome" DataValueField="id"
DisplayMode="HyperLink" CssClass="href">
</asp:BulletedList>
版本交互:
for (int i = 0; i < BulletedList1.Items.Count; i++)
{
if (i % 2 == 0)
{
BulletedList1.Items[i].Attributes.CssStyle.Value = "href";
}
else
{
BulletedList1.Items[i].Attributes.CssStyle.Value = "other";
}
}