我注意到你可以改变文本框中文本的颜色,这些文本框在Firefox中应用了一个简单的类但是在IE 6/7中无法实现.有没有人有一个优雅的解决方案来实现这一目标.
bob*_*nce 77
我注意到您可以更改在Firefox中禁用的文本框中的文本颜色
我想这个问题试图说的是:
<textarea disabled="disabled" style="color: red;">Hello</textarea>
Run Code Online (Sandbox Code Playgroud)
在IE中显示灰色文本,在Fox中显示红色.FWIW,Opera也提供灰色,而WebKit浏览器提供红色.
这是一个纯CSS问题,与根据操作系统的小部件集呈现多少表单字段以及根据CSS规则多少呈现一样.这一直是一个跨浏览器差异很大的领域.脚本编写是不相关的,尽管SO希望"使用jQuery"作为每个问题的答案.
通常的解决方法是使用'readonly'而不是'disabled',然后使用样式(例如基于'class ='disabled"')来重现你想要的任何阴影禁用效果.'readonly'控件不会转换为OS级别禁用的小部件,为您提供更大的自定义样式.
小智 27
应该注意的是,使用该disabled
属性会导致<input>
在表单提交期间不提交基础元素,而readonly
控件则提交给服务器.因此,readonly
如果您的服务器代码不期望来自该控件的值,则不应使用.
根据我的经验,尝试破解某些东西以获得可接受的演示文稿通常是不值得的.我建议您更改CSS,以便修复IE禁用的文本样式与您的基础控件样式不冲突,或者使用样式化文本代替控件(因为禁用的控件不能成功提交).使用浏览器而不是反对它.
我对<select>
IE10中的元素有同样的问题并找到了解决方案:
有一个Microsoft psuedo元素,允许修改文本颜色:
select[disabled='disabled']::-ms-value {
color: #000;
}
Run Code Online (Sandbox Code Playgroud)
规则必须独立,因为否则其他浏览器会因语法错误而忽略整个规则.有关其他仅限Internet Explorer的psuedo元素,请参阅http://msdn.microsoft.com/en-us/library/ie/hh869604(v=vs.85).aspx.
编辑:-ms-value
psuedo元素是在IE10中引入的,因此不适用于早期版本.
归档时间: |
|
查看次数: |
66781 次 |
最近记录: |