我在页面上有一个HTML div
元素,当页面上的select
元素发生更改时,该元素会更新。有时需要根据选择禁用input
标记(文本框)。
问题在于:项目利益相关者喜欢功能,他们只是认为处于“禁用”状态,文本框内容太轻,因此不可读。我可以将CSS应用于禁用的控件吗?或者我应该将文本框设置为readonly
并使用其他CSS。这个应用程序也使用jQuery,如果这有帮助。还有想法或建议吗?
答案 0 :(得分:8)
input[type="submit"][disabled="disabled"]
{
/* CSS here */
}
input[type="text"][disabled="disabled"]
{
/* CSS here */
}
input[type="button"][disabled="disabled"]
{
/* CSS here */
}
如果输入标记类似于:
,则在每个浏览器中都有效<input type="submit" disabled="disabled">
如果您想在未禁用时更改它,只需将其添加到您的CSS
即可input[type="submit"]
{
/* CSS here */
}
input[type="text"]
{
/* CSS here */
}
input[type="button"]
{
/* CSS here */
}
答案 1 :(得分:4)
是的,你可以。在CSS中:
input[disabled]{color:green}
或jQuery:
$('input[disabled]').css('color','green');
更新:这仅适用于gecko / webkit。
答案 2 :(得分:2)
将CSS应用于元素不受元素是否被禁用的影响。
答案 3 :(得分:2)
我会将它们设置为只读,因为显然您希望人们能够阅读它们,人们可能还希望从中选择文本进行复制/粘贴,并且禁用文本框时也禁用选择。但是,无论元素是否被禁用,您的CSS都应该正常工作。
答案 4 :(得分:0)
如果你在禁用的元素中遇到不可覆盖的样式有问题 - Upper Stage指出样式没有限制,而且第二个想法他可能是对的 - 你可能最好给控件一个{ {1}}属性并使用readonly
请注意,这不会像禁用控件一样100%工作:它的值将与表单一起提交。