我想禁用文本区域的可调整大小属性。

目前,我可以通过单击文本区域的右下角并拖动鼠标来调整文本区域的大小。如何禁用此功能?


当前回答

您可以像这样简单地禁用textarea属性:

textarea {
    resize: none;
}

要禁用垂直或水平调整大小,请使用

resize: vertical;

or

resize: horizontal;

其他回答

您可以像这样简单地禁用textarea属性:

textarea {
    resize: none;
}

要禁用垂直或水平调整大小,请使用

resize: vertical;

or

resize: horizontal;

使用@style,您可以为其设置自定义大小并禁用调整大小功能(resize:none;)。

@Html.TextAreaFor(model => model.YourProperty, new { @style = "width: 90%; height: 180px; resize: none;" })

CSS3为UI元素提供了一个新属性,允许您执行此操作。该属性是resize属性。因此,您可以将以下内容添加到样式表中,以禁用所有文本区域元素的大小调整:

textarea { resize: none; }

这是一个CSS 3属性;使用兼容性图表查看浏览器兼容性。

就个人而言,我会发现在文本区域元素上禁用大小调整非常烦人。这是设计者试图“破坏”用户客户端的情况之一。如果您的设计不能容纳更大的文本区域,您可能需要重新考虑您的设计是如何工作的。任何用户都可以将textarea{resize:both!important;}添加到他们的用户样式表中,以覆盖您的偏好。

要禁用所有文本区域的大小调整,请执行以下操作:

textarea {
    resize: none;
}

要禁用特定文本区域的大小调整,请添加属性、名称或id并将其设置为某个值。在本例中,它被命名为noresize

HTML

<textarea name='noresize' id='noresize'> </textarea>

CSS

/* Using the attribute name */
textarea[name=noresize] {
    resize: none;
}
/* Or using the id */

#noresize {
    resize: none;
}

您也可以尝试使用jQuery

$('textarea').css("resize", "none");