我有以下代码:
select option:disabled:checked {
color: grey;
}
<select>
<option selected disabled>Initial Option</option>
<option>One</option>
<option>Two</option>
</select>
它已经成功地选择了正确的元素。但是问题在于:当选中禁用选项的文本时(也就是我们首次加载页面时),我想要改变其颜色。目前,只有在我选择下拉选择列表中的另一个选项时,才能看到应用的灰色颜色。我希望最初选定的颜色为灰色,以表示用户仍需选择另一个选项。我该如何实现这一点?
select
的颜色来实现,而不是option
的颜色。但是1)我担心没有纯CSS解决方案,因为您需要根据子数据更改父级CSS,2)灰色的select
可能是一种非常糟糕的技术,因为它看起来像选择本身被禁用了,您无法单击它。我认为最好在第一个option
元素中添加一个虚假选项,比如说“选择您的选项”。 - Cheslabselect
元素。但是,使用 JS 会影响性能,对吧? - Richard