我在一个表单中输入了这个文本:

<input type="text"
       cols="40" 
       rows="5" 
       style="width:200px; height:50px;" 
       name="Text1" 
       id="Text1" 
       value="" />

我试图让它接受多行输入。宽度和高度使框更大,但用户可以输入所有(s)他想要的文本,但它只填充一行。

我如何使输入更像一个文本区域?


当前回答

你应该使用textarea来支持多行输入。

<textarea rows="4" cols="50">
Here you can write some text to display in the textarea as the default text
</textarea>

其他回答

如果你需要多行文本区域与自动高度增加功能,你可以使用以下简单的javascript,

函数auto_height(elem) {/* javascript */ element .style.height = "1px"; element .style.height = (element . scrollheight)+"px"; } .auto_height {/* CSS */ 宽度:100%; } <textarea rows="1" class="auto_height" oninput="auto_height(this) "" > < / >文本区域

你不能。在编写本文时,唯一被设计为多行的HTML表单元素是<textarea>。

使用textarea

<textarea name="textarea" style="width:250px;height:150px;"></textarea>

在开始和结束标签之间不要留下任何空格,否则会留下一些空行或空格。

您需要使用文本区域来获得多行处理。

<textarea name="Text1" cols="40" rows="5"></textarea>

通过赋予word-break: break-word,可以使文本输入多行;属性。(仅在Chrome中测试)