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

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


当前回答

您只需使用:resize:none;在CSS中。

resize属性指定元素是否可调整大小由用户执行。注意:resize属性适用于计算溢出的元素价值不是“可见”。

目前Internet Explorer不支持调整大小。

以下是用于调整大小的不同财产:

不调整大小:

textarea {
  resize: none;
}

双向调整大小(垂直和水平):

textarea {
  resize: both;
}

垂直调整大小:

textarea {
  resize: vertical;
}

水平调整大小:

textarea {
  resize: horizontal;
}

此外,如果您的CSS或HTML中有宽度和高度,它将阻止您的文本区域被调整大小,并提供更广泛的浏览器支持。

其他回答

以下CSS规则禁用textarea元素的大小调整行为:

textarea {
  resize: none;
}

要禁用某些(但不是所有)文本区域,有几个选项。

您可以在标记中使用class属性(<textarea class=“textarea1”>):

.textarea1 {
  resize: none;
}

要禁用名称属性设置为foo的特定文本区域(即<textarea name=“foo”></textarea>):

textarea[name=foo] {
  resize: none;
}

或者,使用id属性(即<textarea id=“foo”></textarea>):

#foo {
  resize: none;
}

W3C页面列出了调整大小限制的可能值:none、both、horizontal、vertical和inherit:

textarea {
  resize: vertical; /* user can resize vertically, but width is fixed */
}

查看一个像样的兼容性页面,了解当前哪些浏览器支持此功能。正如Jon Hulka所评论的,CSS中可以使用最大宽度、最大高度、最小宽度和最小高度来进一步限制尺寸。

非常重要的是要知道:此属性不起作用,除非溢出属性不是可见的,这是大多数元素的默认值。因此,一般来说,要使用此选项,必须设置溢出:滚动;引自Sara Cope,http://css-tricks.com/almanac/properties/r/resize/

在CSS中。。。

textarea {
    resize: none;
}

您也可以尝试使用jQuery

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

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

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;
}
<textarea style="resize:none" rows="10" placeholder="Enter Text" ></textarea>