我想改变网格中禁用的复选框的CSS(他们太难以查看用户)。什么是简单的方法来做到这一点?如何为禁用的复选框设置CSS?
我在使用的技术(按降序排列)的偏好:
CSS
的JavaScript
jQuery的
其他
我想改变网格中禁用的复选框的CSS(他们太难以查看用户)。什么是简单的方法来做到这一点?如何为禁用的复选框设置CSS?
我在使用的技术(按降序排列)的偏好:
CSS
的JavaScript
jQuery的
其他
我建议改变背景的颜色(background-color
的形式/ fieldset),看看你能否想出一个更好的对比。如果你只是想改变残疾(?非选择)复选框的颜色,你可以尝试:
input[disabled] {
...
/* CSS here */
...
}
但如果他们是残疾人的一个原因,当然,他们并不需要是显着的可视?他们灰色化的目的当然是为了避免主动/启用和不活动/禁用表单元素之间的混淆?
因为我们的用户群正在使用IE,所以我们无法在CSS中这样做。但是,我们在.NET中的复选框控件上以编程方式执行了此操作。 – 2009-12-04 22:01:57
@Even Mien:如果你说过你是如何做到这一点的话,那就好了,也就是说你设置了什么属性。 – 2010-11-17 09:40:18
@Christopher在ASP.Net代码的下面看到我的答案。 – David 2011-04-09 00:55:55
伊夫曾与几个JS库好运做的工作。当然,我的要求是使框与标准复选框看起来非常不同。以下库甚至可以兼容508。
基本上,你需要在DIV,P,或用于网格中的任何其他元件连接onclick事件,然后将选中的值转移到与那场在网格有关的隐藏元素。这是非常微不足道的,如果使用javascript - 检查jquery添加onclick事件的任何元素。如果点击,则为隐藏元素设置值= 1。
input:disabled {}
适用于除浏览器外的所有浏览器,IE浏览器。对于IE,我想你必须使用一些JS库。
保持该复选框处于启用状态,但将onfocus=this.blur()
添加到复选框,以免它被点击。
或者如果使用ASP.net(如您在您的评论说)保持复选框设置为启用,并添加以下到Page.Load事件:
CheckBox1.Attributes.Add("onclick", "return false;");
如果你有一个混合形式启用和禁用复选框,禁用复选框淡出可避免用户混淆。如果打算显示带有复选框的仅供查看的页面(例如显示在购物收据上选择的产品选项),那么使用图像替换复选框输入元素可能会产生更好的结果。
更换
<input type="checkbox" disabled>
<input type="checkbox" disabled checked>
与
<img src="unchecked.gif">
<img src="checked.gif">
实际上有点CSS3,你可以嘲笑了一个非常简单的解决方案。 你将永远不得不考虑你想提供什么样的支持。 但是,如果你在现代浏览器上工作的很好,那就试试吧。
这里的HTML
<label>
<input type="checkbox" name="test" />
<span>I accept terms and cons</span><br><br>
<button>Great!</button>
</label>
这里的CSS
button { display: none}
:checked ~ button {
font-style: italic;
color: green;
display: inherit;
}
请更多的描述,你需要JavaScript的解决方案的演示? – dusoft 2009-07-30 14:28:49