[英]Increase or decrease font size based on percentage change of height and width of an element
[英]How to increase height of textarea based font size
我有一个 textarea,用户将在其中输入一些文本,还有一个输入范围,用户可以在其中增加文本的字体大小,我希望 textarea 的宽度仍然相同,但高度增加取决于字体大小以显示所有文本,而且我希望 textarea 没有滚动和调整大小,我使用 div 做到了这一点,并且我希望使用 textarea 获得相同的结果
我使用 div https://jsfiddle.net/Meline222/fgpedL0z/1/
我想要相同的结果,但使用 textarea https://jsfiddle.net/Meline222/fgpedL0z/3/ bt 当我使用 textarea 时,所有文本都看不到
我试过了,但所有文本都不显示 textarea
这项工作为 div
#inputText {
width: 150px;
height: auto;
border: 1px solid;
word-wrap: break-word;
overflow:hidden;
resize: none;
}
JSFiddle 演示: https ://jsfiddle.net/craigiswayne/qkn8rdxp/20/
function adjustSize(i){ var o = document.getElementById('inputText'); o.setAttribute("style","height: auto;"); var val = i.value; o.style.fontSize = val + 'px'; var fontSize = o.style.fontSize; o.setAttribute("style","font-size: " + fontSize + "; height: " + o.scrollHeight + "px;"); }
#inputText { width: 150px; height: auto; border: 1px solid; word-wrap: break-word; }
<textarea name="" id="inputText">kyb u uuhhhkjh kj</textarea> <input id="input" type="range" min="12" max="72" oninput="adjustSize(this);">
所以我选择将textarea
的height
设置为它的scrollHeight
的解决方案
scrollHeight
由 MDN 文档定义为
scrollHeight 值等于元素需要的最小高度,以便在不使用垂直滚动条的情况下适应视口中的所有内容
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight
有关scrollHeight
、 clientHeight
和offsetHeight
的解释, scrollHeight
见这篇文章
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.