样式在HTML中禁用<select>(下拉框)

Hei*_*nzi 19 html css accessibility

我们的一位客户很难在基于Web的应用程序中阅读禁用控件中的灰色文本:

IE9的例子

我们想将样式更改为浅灰色背景和黑色文本.不幸的是,大多数浏览器(包括IE,客户正在使用的)忽略color: ...禁用控件上的CSS属性,因此我们无法更改前景色.

对于文本框(input type="text"),可以通过使用readonly而不是disabled属性来轻松实现这一点.不幸的是,这不是下拉列表(select)或复选框(input type="checkbox")的选项.

有一个简单的解决方法吗?优选地,控件不需要被另一种控件替换?(...因为我们的控件是由ASP.NET呈现的)

PS:[disabled]在CSS中使用选择器并没有什么区别.

Wil*_*tin 30

在Internet Explorer 9中,将为:disabled伪选择器(ref)添加支持.我不知道这是否会尊重"颜色"属性,但似乎很可能.

在旧版本的IE中,您可以调整背景颜色(但不能调整颜色).从而:

    <style type="text/css">
        select[disabled] { background-color: blue; }
    </style>
Run Code Online (Sandbox Code Playgroud)

这适用于IE 7和IE 8.您仍然无法改变前景色,但您可以更改背景颜色,以便与IE在禁用时分配的灰色形成更强烈的对比.

  • IE9在禁用时不支持"颜色"属性.文字仍然是带有白色阴影的丑陋灰色. (3认同)

Dar*_*ney 5

这在webkit和Firefox中对我有用

select:disabled{
   opacity: 0.6;
}
Run Code Online (Sandbox Code Playgroud)