CSS3选择特定值时更改组合框颜色

时间:2015-02-01 08:51:34

标签: html css

select[name="combo"] option[value="2"]:checked + select[name="combo"] {
  color: red;
}
<select name="combo">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
</select>

如果您选择选项2,我想更改select(非option)颜色。 我做错了什么。

由于

1 个答案:

答案 0 :(得分:0)

仅使用CSS无法完成此操作。您将不得不使用Javascript使其工作 - CSS不提供&#34;父母&#34;选择器。

CSS中的+选择器用于紧跟在另一个元素之后的元素,而不是INSIDE它。

Working jsFiddle :(使用jQuery)

$('select').on('change',function(){
    var $this = $(this);
    switch($this.val()){
        case '2':
            $this.css('color','red');
            break;
        default:
            $this.css('color','black');
    }
});