Как изменить цвет скрытой опции выбора в FireFox - PullRequest
5 голосов
/ 11 августа 2011

Я хочу изменить цвет скрытой опции выбора в FireFox, у которой по умолчанию синий фон и белый передний план.

Я пытался:

<select name="select" size="1">
   <option>0</option>
   <option class="test">1</option>
   <option>2</option>
   <option>3</option>
   <option>4</option>
</select>

.test:hover {
    color:green;
    background-color:yellow;
    text-decoration:underline;
}

Но это не работает. См. Пример .
Достаточно специфического решения для FireFox.

Ответы [ 4 ]

7 голосов
/ 11 августа 2011

SELECT элементы отображаются операционной системой, а не HTML. Вы не можете стилизовать этот элемент.

Вы можете использовать замену HTML + CSS, используя JavaScript для имитации SELECT.

2 голосов
/ 12 августа 2011

Я обнаружил, что могу установить изображение в качестве фона.

jsfiddle demo

Но это только на: hover, когда я выхожу из опции, которая будет отображаться системой.

2 голосов
/ 11 августа 2011

Это невозможно сделать только с помощью CSS. Я рекомендую jQuery + Выбранный плагин для замены <select>

0 голосов
/ 08 апреля 2014

Я думаю, что вам, возможно, понадобится работать с такими комбинаторами CSS:

select>option.test:hover
{
    color: #1B517E;
    cursor: pointer;
}

В основном вы указываете это:

Родитель> дети. класс: событие

Все дочерние элементы в тегах select, внутри которых параметры с классом ".test" будут иметь стиль, указанный в скобках.

ВАЖНО: Работает в Firefox, но не в Chrome.

Вот ссылка, которая может вам помочь: http://www.w3schools.com/css/css_combinators.asp

...