提问者:小点点

如何用CSS自动增长文本区域?


给定一个文本区,它是一个小框,单行开始,是否可以使用CSS自动增长为多行,因为用户键入多行,直到设置限制(300px),滚动条将出现溢出自动与所有输入?


共3个答案

匿名用户

是的,你可以用CSS3。您可能需要在浏览器中添加这些前缀。

textarea { 
    resize: both; 
} /* none|horizontal|vertical|both */
textarea.vert { 
    resize: vertical; 
}
textarea.noResize { 
    resize: none; 
}

然后,您可以使用以下方法限制它们的最大高度和宽度:

textarea { 
    resize: vertical; 
    max-height: 300px; 
    min-height: 200px; 
}
textarea.horiz { 
    resize: horizontal; 
    max-width: 400px; 
    min-width: 200px;
}

我从我过去参考过的一篇文章中摘取了这些:

使用CSS自定义文本区域大小

匿名用户

2020更新-使用ContentEditable

因为这个答案仍然时不时地帮助一些人,我想用Chris Coiyer的最新发现来更新我的答案。

请注意,它仍然不是一个CSS3解决方案。但它是浏览器内置的,并重新创建OP的搜索行为。

上使用ContentEditableHTML属性将允许用户编辑div的文本内容,并在用户断行时展开。然后,只需将div转换为