禁用CSS中的文本区域

25

要禁用文本区域(或任何其他输入元素),可以采取以下措施:

  • 在HTML中,您可以编写: <textarea id='mytextarea' disabled></textarea>

  • 使用jQuery,您可以: $("#mytextarea").attr("disabled","disabled");

  • CSS?是否可以使用CSS禁用文本区域?


7
即使您可以这样做,从语义上讲CSS是用于显示而非行为的,因此我会说CSS不是禁用内容的适当方式(如果需要,可以使用 display:none 隐藏它)。 - Andreas Wong
1
@Mark为什么?disabled是textarea的一个属性,在bArmageddon中上面的那行是正确的。 - David Bélanger
2
pointer-events: none; 可以阻止在 Firefox 3.6+、Safari 3+ 和 Chrome 5+ 中单击文本区域。然后,您可以应用所有颜色效果。如果您好奇,可以考虑将 JavaScript 放入 CSS 文件中,我认为这在 IE 的动态属性中是可能的。但所有这些都是 hackish! :) - AnnanFay
4
@Annan:不过你仍然可以通过制表键切换到它。 - BoltClock
@AnnanFay,你的想法在一些粗略的原型制作中帮了很大的忙 - 谢谢! - Paracetamol
显示剩余2条评论
11个回答

-1
如果您以这种方式禁用了文本区域:

<textarea disabled="disabled">foobar</textarea>

您可以使用以下 CSS 轻松为其添加样式:

textarea[disabled="disabled"]
{
  color: red;
}


1
问题是如何使用CSS禁用一个文本区域,而不是如何为已经使用HTML禁用的文本区域设置样式。 - Quentin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接