我想更改复选框列表中所选项目的背景颜色。我试过像,
CBList1.Items[0].Attributes.Add("style", "background-color: red;");
但是这里复选框和相关文本的背景颜色发生了变化。有没有办法只改变复选框的背景颜色而不改变相关文本的背景颜色?
我想更改复选框列表中所选项目的背景颜色。我试过像,
CBList1.Items[0].Attributes.Add("style", "background-color: red;");
但是这里复选框和相关文本的背景颜色发生了变化。有没有办法只改变复选框的背景颜色而不改变相关文本的背景颜色?
试试下面的代码:
newCkItm.Attributes.Add("id", "alpha");
这样,您可以将所有样式与代码分开,而不必在每次需要调整 CSS 时重新编译等。
CSS 本身看起来像这样:
#cblCalendarFilter {
border:none;
border-collapse:collapse;
}
#cblCalendarFilter td {
padding:0;
}
#cblCalendarFilter span {
display:block;
padding:2px;
}
#cblCalendarFilter #alpha {
background:red;
}
#cblCalendarFilter #beta {
background:yellow;
}
不幸的是,我认为输入标签(当 type=checkbox 时)根本不能与 style 属性一起使用。制作一个新的复选框输入并自己尝试。
所有asp:CheckBoxList
/asp:ItemList
和asp:CheckBox
所做的都是为输入和标签生成 HTML,并将它们包装在span
标签中。该 span 标签是应用样式的地方。
如果对复选框分组不是一个大问题,您可以使用asp:CheckBox
没有属性的单个控件,Text
并在标签之外写入相关文本。
<asp:CheckBox ID="cb1" runat="server" />associated text 1
<asp:CheckBox ID="cb2" runat="server" />associated text 2
<asp:CheckBox ID="cb3" runat="server" />associated text 3
但是,您仍然必须调用cb1.Attributes
并且不cb1.InputAttributes
应用该样式。