Css 打开下拉列表后的样式第一行

Css 打开下拉列表后的样式第一行,css,asp.net-mvc,razor,Css,Asp.net Mvc,Razor,我有一个下拉列表: @Html.DropDownListFor(m => m.CategoryId, Model.CategoriesList, "categoria") 我想为第一行指定样式,但仅当dropdownlist打开时,并将标签样式保留在其上: 我试过了 .as-ads-filter-field select:first-child { font-weight: bold; } 但是标签“categoria”即使在列表关闭时也是粗体的,我只想在列表打开以区别于列表值

我有一个下拉列表:

@Html.DropDownListFor(m => m.CategoryId, Model.CategoriesList, "categoria")
我想为第一行指定样式,但仅当dropdownlist打开时,并将标签样式保留在其上:

我试过了

.as-ads-filter-field select:first-child
{
    font-weight: bold;
}
但是标签“categoria”即使在列表关闭时也是粗体的,我只想在列表打开以区别于列表值时粗体

编辑:

Html输出:

<select id="CategoryId" name="CategoryId">
   <option value="">categoria</option>
   <option value="1">Carros</option>
   <option value="2">Motos</option>
   <option value="5">Comerciais</option>
</select>

范畴
卡罗
摩托
科梅西亚
小提琴:
谢谢

除了
背景色
颜色
之外,您不能更改选项样式

请看下面的原因,它来自

除背景色和颜色外,通过应用样式设置 选项元素的样式对象将被忽略

您可以在此处看到结果:

如果你想从CSS社区得到帮助,也可以考虑发布HTML输出。你能在HTML和CSS上发布一个工作例子吗?嗨,谢谢,我已经发布了HTML输出和小提琴的工作例子。我认为你不能用HTML+CSS来做。查看select.mousedown和select.click事件,以确定select何时打开/关闭。请注意,实现跨浏览器工作的解决方案可能很棘手。