Html 在中设置的背景色

Html 在中设置的背景色,html,css,Html,Css,我正在尝试设置选择选项的背景色,如下所示: <select> <option class="yellow">Option 1</option> <option class="blue">Option 2</option> <option class="red">Option 3</option> </select> 类的位置如下

我正在尝试设置选择选项的背景色,如下所示:

<select>
  <option class="yellow">Option 1</option>
  <option class="blue">Option 2</option>
  <option class="red">Option 3</option>
</select>
类的位置如下:背景色:红色;。其思想是,当显示下拉列表时,每个选项都有适当的背景色

看起来这应该是一件简单的事情,但在这里花了一个小时之后,我发现了很多答案,它们声称可以解决这个问题,但实际上并不起作用。所有选项都具有默认背景色

以下是一些在Mac上不适用于Chrome 83.0.4103.116和Safari 13.1的示例:

更改“选择颜色”有效,但不更改选项颜色 他们确实在Mac上与FF合作


在Mac上使用最新的Chrome和Safari是否可能做到这一点?Javascript解决方案没问题。

我希望这对您有用。我在css中使用了id选择器,它起了作用:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>
    <body>
    <style type="text/css">
        #red{
            background-color: red;
        }
        #yellow{
            background-color: yellow;
        }
        #green{
            background-color: green;
        }
    </style>
    <select>
        <option id="red">Option 1</option>
        <option id="yellow">Option 2</option>
        <option id="green">Option 3</option>
    </select>

    </body>
</html>

根据对上述问题的评论

我在Mac上使用最新的Chrome浏览器

是的,有麻烦了。老实说,我很惊讶提供的链接能在我的Windows工作站上工作。从历史上看,设计a和其他一些形式元素一直是一个白日梦

一些表单元素比其他表单元素更依赖于本机操作系统功能,对于元素来说也是如此。请注意,一个完全没有样式的标准在Mac电脑上与Windows或Linux上看起来有很大不同。在这种情况下,本机操作系统功能似乎根本不支持这里的样式


为了获得最大的兼容性,您最好的选择可能是使用jQuery,如果您不反对使用jQuery,那么其他框架有很多,如果您已经在使用某些东西来显示现有框架中的样式化菜单。或者如果你有雄心壮志,你可以自己写。但是本机功能是操作系统一时兴起的,可能会持续一段时间。

为什么它不能在浏览器中工作。我尝试了相同的代码,它在我的浏览器中工作

<select>
  <option class="yellow">Option 1</option>
  <option class="blue">Option 2</option>
  <option class="red">Option 3</option>
</select>

如果仍然不起作用,我建议将选项包装在或标记中,并对其应用背景色属性。

第三个链接中的代码片段对您不起作用?它在Chrome中为我工作。您是否使用特定的浏览器进行测试并需要支持?该浏览器本身可能不支持此功能。您引用的所有示例在Chrome和FF@David,我在Mac上使用最新的Chrome。@gaefan:Mac可能是问题所在。其他表单元素传统上使用大量本机操作系统功能进行渲染,而该操作系统可能不支持这方面的样式。我真的很惊讶上面的链接竟然在Windows中工作。为了获得最大的兼容性,您最好的选择可能是使用JavaScript插件。如果您不反对使用jQuery,jQuery有很多插件,如果您已经在使用某个插件来显示现有框架中的样式化菜单,那么其他框架也有自己的插件。或者如果你有雄心壮志,你可以自己写。@David,如果你愿意的话,这看起来是个不错的答案。这对我不管用。虽然我没有投你反对票。人们对这里的问题和答案都非常消极…@gaefan只是想帮助mate。我会在Mac上试用,并让你知道。我已经在使用Bootstrap了,所以Bootstrap下拉列表是一个很好的解决方案。谢谢你的提示。
.yellow{
   background-color:yellow;
}

.blue{
     background-color:blue;
 }

.red{
 background-color:red;
 }