Textarea自动高度增加

Gen*_*jik 2 html css textarea

我有html <textarea></textarea>和CSS:

textarea {
    width: 100%;
    max-height: 80px;
    resize: none;
}
Run Code Online (Sandbox Code Playgroud)

如果文本很多,我希望将textarea的高度增加到80px,然后显示一个滚动条。问题是textarea为25px(我不知道为什么,可能是我的浏览器设置了此属性),并且当文本很多时,它在25px之后显示滚动条。无论如何,只有在80px之后才显示滚动条吗?

Dal*_*ang 7

您确实需要js来执行此操作,请参见下面的示例:

var textarea = document.getElementById("textarea");
var limit = 80; //height limit

textarea.oninput = function() {
  textarea.style.height = "";
  textarea.style.height = Math.min(textarea.scrollHeight, limit) + "px";
};
Run Code Online (Sandbox Code Playgroud)
textarea {
    width: 100%;
}
Run Code Online (Sandbox Code Playgroud)
<textarea id="textarea"></textarea>
Run Code Online (Sandbox Code Playgroud)