这是我尝试过的:
<textarea name='text' spellcheck = "true" style="height: 4em; width: 80%;" id="wider"></textarea>
我也尝试过用 px 或 % 设置高度,但这两种方法都不起作用。我还在我的 css 文件中尝试了以下操作(以及在 css 中将高度设置为 %、px 或 em,这也不起作用):
#wider{
width: 80%;
height: auto;
}
我可以使用内联样式命令或 css 调整宽度,没有问题。为什么高度应该不同,我还可以尝试什么?
感谢您的任何建议。
更新:我还尝试在内联和 CSS 样式中设置 rows 属性。我知道内联会否决CSS。我只想要一个能工作。现在,宽度属性始终会进行调整以反映我的更改,但高度始终保持不变。还有什么我应该看的吗?再次感谢!
在本例中,表单中的文本区域隐藏了一个“最小高度”属性。显然,高度的内联样式设置不会覆盖 CSS 文件中的 min-height 属性。
如果您使用内联样式标签,它将优先于 CSS 样式。
height 属性按预期工作: JSfiddle 在这里。
如果您有预期要使用的行数,还可以使用文本区域上的 rows 属性来设置高度。
<textarea name='text' spellcheck="true" id="wider" rows="5"></textarea>
一旦某些父元素改变了自己的尺寸(例如高度),您就可以使用 JavaScript 来调整文本区域的尺寸。您将调用 functios(ES6 Javascript 版本):
const makeDimensionsEqual = (someTextareaSelector, someParentElementSelector) => {
document.querySelectorAll(someTextareaSelector)[0].style.height =
document.querySelectorAll(someParentElementSelector)[0]
.getBoundingClientRect().height + "px"
}
const someTextareaSelector = '...'
const someParentElementSelector = '...'
makeDimensionsEqual(someTextareaSelector, someParentElementSelector)
免责声明:我只能猜测为什么它有效,但它在我的 WordPress 中有效...... 我拔出了头发,试图让文本区域响应 css“高度:自动”调整。偶然间,在尝试输入来自“Moussawi7”的“oninput=”javascript建议时[参见问题https://stackoverflow.com/questions/17772260/textarea-auto-height],我无法开始工作,我添加了一个绑定到