7

我正在尝试更改选择选项中的选择颜色。我试图这样做:

option::selection {background: #ccc;}
option::-moz-selection {background: #ccc;}
option::-webkit-selection {background: #ccc; color:#fff;}

但它不起作用。这仅适用于简单文本,不适用于选项。有没有办法改变选择的颜色?我不需要更改所选选项的背景。我需要改变选择的颜色。

4

3 回答 3

2

试试这个也许对你有帮助。

select{
    margin:40px;
    background: yellow;
    color:#000;
    text-shadow:0 1px 0 rgba(0,0,0,0.4);
}
option:not(:checked) { 
    background-color: #FFF; 
}

HTML

<select>
    <option val="">Select Option</option>
    <option val="1">Option 1</option>
    <option val="2">Option 2</option>
    <option val="3">Option 3</option>
    <option val="4">Option 4</option>
</select>

演示 JsFiddle:https ://jsfiddle.net/hamzanisar/yfg8vdme/

于 2016-03-07T05:55:17.733 回答
1

希望这是你所期望的。

function ChangedSelection()
{
var x = document.getElementById("mySelect").selectedIndex;
var color =document.getElementsByTagName("option")[x].value;
var y = document.getElementById("mySelect");
y.style.color=color;
}
<select id="mySelect" onchange="ChangedSelection()" style="Color:red;">
    <option value="red" selected="selected">Red</option>
    <option value="blue">Blue</option>
    <option value="Green">Green</option>
    <option value="Yellow">Yellow</option>
</select>

于 2014-12-28T10:46:08.543 回答
0

尝试这个

http://jsfiddle.net/zNTqm/287/

JAVASCRIPT

$('.mySelect').change(function () {
    $(this).find('option').css('background-color', 'transparent');
    $(this).find('option:selected').css('background-color', '#cccccc');
}).trigger('change');

HTML

<select class="mySelect">
    <option value="1" selected="selected">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
</select>
于 2013-07-17T11:16:38.103 回答