我想更改下拉列表、列表框和文本框中所选元素的背景颜色。这可以用 CSS 实现吗?
谢谢
更新
刚刚试过这个 CSS:
::-moz-selection
{
background-color:#8CCA1E;
color:Black;
}
适用于选定的文本,但不适用于悬停颜色或下拉列表或列表框中的选定元素颜色。
最佳答案
您可以通过指定 CssClass 或 BackColor 属性从 .aspx 页面设置背景颜色。它看起来像:
<asp:ListBox CssClass="MyListBox" BackColor="#e0e0e0"></asp:ListBox>
设置所选元素有点棘手......我不相信有直接的属性。您可以在 javascript 或 jQuery 中设置它,例如:
// Never mind, this won't work
<script type="text/javascript">
$(document).ready(function() {
$('#MyListBox').click(function() {
$("#MyListBox option:selected").css("background-color", "#e0e0e0");
});
});
</script>
我会测试它以确保它有效...如果您需要直接的 javascript 解决方案,我会看看我能想出什么。但是,如果您不使用 jQuery,并且希望对控件进行细粒度控制,那么现在是学习它的好时机:)
感谢 Justin 对脚本的更正!
编辑
悬停很容易...添加样式:
select > option:hover {
background-color: #ffffd0;
}
这将为您在页面上悬停的任何列表框元素设置背景颜色。 jQuery 可用于在所有列表框上设置点击功能,而不仅仅是具体#MyListBox...给我几分钟时间,我将添加一些代码
更新
经过广泛的研究,用尽了我拥有或可以使用的所有资源,我得出的最佳答案是:无法设置所选颜色。
即使是我想出的 jQuery 代码也行不通。所选颜色由操作系统设置,不能被覆盖。
抱歉,我能做的最好的就是 :hover 伪选择器
:(
.
关于c# - 使用 CSS 更改 ASP.NET 中下拉列表所选元素的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4185564/