【发布时间】:2010-12-12 15:09:06
【问题描述】:
如何使用 CSS 更改 <select> 的突出显示颜色,即在光标经过 <li> 时突出显示的颜色?
【问题讨论】:
-
我不确定“highlight”是否像这个问题所暗示的那样具有描述性。
标签: html css colors html-select
如何使用 CSS 更改 <select> 的突出显示颜色,即在光标经过 <li> 时突出显示的颜色?
【问题讨论】:
标签: html css colors html-select
不知道“突出显示<li> 的颜色”是什么意思,但听起来您想更改<option> 元素的背景颜色。我试过了,还是不行,你总是得到系统颜色。
如果您想在鼠标悬停时突出显示整个 <select> 元素,这有点工作:
select:hover { background-color: red; }
但是在不同的浏览器中行为是不同的。例如,Chrome 不会突出显示下拉菜单中的选项; Firefox 可以,但是如果您将鼠标移开并且它们仍然被拉下,它不会将它们改回来。
正如在许多类似问题中所述,您无法可靠地设置表单控件的样式。 See here 了解更多详情。
【讨论】:
您不能通过类似 -> background:#f9f9f9
你可以这样做:
select > option:hover{
box-shadow: 0 0 10px 100px #FED20F inset;
transition: all .2s ease-in-out;
}
【讨论】:
如上所述,设置 background-color 会起作用,但 :hover 在 IE7 中存在问题 - 将文档类型设置为严格会有所帮助。
【讨论】:
你可以使用 :hover 伪类
例如
.classOfElementToColor:hover {background-color:red; color:black}
适用于大多数浏览器,但不适用于 IE6 中的所有元素
【讨论】:
只需使用这个 CSS 选择器:
select option:hover {
background-color: yellow;
}
【讨论】: