我試圖用一種簡單的顏色選擇器使用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) –
不要這樣做。請。別。在移動設備上,您所獲得的僅僅是空白選項,根本不指示它們的含義。只需使用''... –