20、HTML <textarea>标签(文本域)

在使用表单时,例如姓名、年龄字段我们可以使用单行文本框,但是当涉及到描述信息,内容比较多时,单行文本框很有可能放不下所有的内容,这时就需要用到多行文本框

在 HTML 中,使用 <textarea> 标签来表示多行文本框,又叫做文本域。与其它 <input> 标签不同,<textarea> 标签是单闭合标签,它包含起始标签和结束标签,文本内容需要写在两个标签中间。具体语法格式如下:

<textarea>文本内容</textarea>

接下来我们通过一段简单的代码来看一下:
纯文本复制

<form action="" method="post">
    描述信息:<textarea name="description">此处是描述信息</textarea>
</form>

运行效果如图所示:在这里插入图片描述
通过运行结果可以发现,文本域的右下角有一个收缩按钮,拖拽按钮可以手动改变文本域的宽高。这个按钮默认显示,也可以隐藏,我们来看一下怎么隐藏它呢?

<form action="" method="post">
    描述信息:<textarea name="description" style="resize:none;">此处是描述信息</textarea>
</form>

注意:此处用到的是 CSS 样式中的内容,读者只需了解即可。当收缩按钮隐藏后,不能手动调节文本域的宽高。

同所有表单元素相同,文本域要想正确提交,也必须设置 name 属性。除了 name 属性以外,文本域还有其它属性,接下来我们看一下:

文本域其它属性:

  • cols ----用来指定每行显示的字符数。
  • rows---- 用来指定正常情况下(没有滚动条)显示的文本行数。
  • id---- 用来定义文本域的唯一 id 属性。

1、 cols属性

cols 属性用来指定每行可以显示的字符数,也就是文本域的可见宽度。一般情况下,如果内容超出文本域宽度,会自动换行显示,但是如果文本内容较长,而且在大于文本域宽度时,还没有空格可以进行换行,就会出现横向滚动条。

我们来看一个示例:

<form action="" method="post">
  许三观对儿子们说:<textarea name="description" cols="40">我知道你们心里最想的是什么。
  就是吃,你们想吃米饭,想吃用油炒出来的菜,想吃鱼啊肉啊的。
  今天我过生日,你们都跟着享福了,连糖都吃到了,可我知道你们心里还想吃,还想吃什么。</textarea>
</form>

通过运行结果可以发现,当文本内容超出了文本域的宽度时,会自动换行显示。这时,出现了纵向的滚动条是因为高度不够。下面我们就来学习一下如何设置文本域的高度。

2. rows属性

在文本域中,rows 属性用来设置文本域的可见行数,也就是文本域的高度。当文本内容超出设置高度时,会出现纵向滚动条。用户拖动滚动条可以查看全部内容。

示例如下:

<form action="" method="post">
  许三观对儿子们说:<textarea name="description" cols="40" rows="6">我知道你们心里最想的是什么。
  就是吃,你们想吃米饭,想吃用油炒出来的菜,想吃鱼啊肉啊的。
  今天我过生日,你们都跟着享福了,连糖都吃到了,可我知道你们心里还想吃,还想吃什么。</textarea>
</form>

运行结果如图所示:
在这里插入图片描述
通过运行结果可以看出,当文本高度小于文本域高度时,不会出现纵向滚动条。

注意:除了使用 rows、cols 属性设置文本域的宽高,css 也可以实现,

3. id属性

id 属性用来定义文本域的唯一 id 值。为文本域添加 id 属性,主要有以下 2 个方面:

  • 在 css 中,可以使用 id 获取元素为其添加 css 样式;
  • 在 JavaScript 中,可以根据设置好的 id 属性获取文本域,然后对它进行一系列操作,例如操作文本域的内容。
  • 32
    点赞
  • 144
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值