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

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


当前回答

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

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

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

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

不调整大小:

textarea {
  resize: none;
}

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

textarea {
  resize: both;
}

垂直调整大小:

textarea {
  resize: vertical;
}

水平调整大小:

textarea {
  resize: horizontal;
}

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

其他回答

textarea {
  resize: none;
}

上面的代码将禁用项目中所有<textarea/>元素的可调整大小属性。如果您希望这样做很好,否则您将希望为textarea元素使用特定的类。

.not-resizable {
   resize: none;
}

在HTML中

<textarea class="not-resizable"></textarea>

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

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属性:

textarea {
    resize: none;
}

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

resize: vertical;

or

resize: horizontal;

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

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

我发现了两件事:

第一

textarea{resize: none}

这是一个尚未发布的CSS 3,与Firefox 4(及更高版本)、Chrome和Safari兼容。

另一个格式特性是溢出:考虑到dir属性,自动删除右滚动条。

代码和不同的浏览器

基本HTML

<!DOCTYPE html>
<html>
<head>
</head>
<body>
    <textarea style="overflow:auto;resize:none" rows="13" cols="20"></textarea>
</body>
</html>

某些浏览器

Internet Explorer 8

Firefox 17.0.1