我试图用一种简单的颜色选择器使用HTML/CSS只有四种颜色 - 迄今为止很好。如何从html选择对象中移除悬停颜色?
令人讨厌的是,当您将鼠标悬停在下拉列表中的某个选项上时,由于悬停状态而变为蓝色 - 但我似乎无法在css中禁用此选项。
我试过select:hover
和option:hover
属性,但似乎没有任何工作。如果不使用能够达到相同效果的库,有没有其他替代方法?
function changeColor() {
\t var c = this.options[this.selectedIndex].value;
document.getElementById("result").style.backgroundColor = c;
}
document.getElementById("colourPicker").addEventListener("change", changeColor);
body {
font-family: Arial, sans-serif;
}
#colourPicker {
width: 50px;
}
#result {
padding: 20px 20px 20px 20px;
border: 1px solid black;
}
.white {
background-color: #ffffff;
}
.red {
background-color: #ff0000;
}
.amber {
background-color: #ffa500;
}
.green {
background-color: #00b300;
}
<div id="test">
Pick a colour:
<select id="colourPicker">
<option value="#ffffff" class="white"></option>
<option value="#ff0000" class="red"></option>
<option value="#ffa500" class="amber"></option>
<option value="#00b300" class="green"></option>
</select>
</div>
<br><br>
<div id="result">
<center>Result Colour</center>
</div>
我不认为你可以改变CSS本地下拉的行为。你应该用HTML元素替换它,也许使用像Select2这样的插件。 – Barmar
[在HTML中悬停更改选择列表选项背景颜色]可能的副本(http://stackoverflow.com/questions/17740391/change-select-list-option-background-colour-on-hover-in-html) –
不要这样做。请。别。在移动设备上,您所获得的仅仅是空白选项,根本不指示它们的含义。只需使用''... –