Перейти к содержимому

Тег HTML <textarea>

Тег <textarea> определяет поле формы, в которое пользователи могут вводить многострочный текст. В отличие от тега <input>, перенос текста внутри <textarea> допускается при отправке формы.

Текстовое поле может содержать неограниченное количество символов. По умолчанию текст внутри этого тега отображается пропорциональным шрифтом.

<textarea> используется внутри тега <form>.

Синтаксис

Тег <textarea> состоит из пары тегов. Содержимое записывается между открывающим (<textarea>) и закрывающим (</textarea>) тегами.

TIP

Чтобы задать размер текстового поля, используйте атрибуты rows и cols или CSS-свойства height и width.

Пример тега HTML <textarea>:

Пример тега HTML <textarea>|W3Docs

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
  </head>
  <body>
    <form action="/form/submit" method="post"> 
      <textarea name="comment" rows="12" cols="35">Send your comments to the author.</textarea><br />
      <input type="submit" name="submitInfo" value="Submit" />
    </form>
  </body>
</html>

Результат

textarea example

В этом примере мы используем <textarea> для определения текстового поля, атрибут name — для задания имени этому полю (“comment”), атрибут rows — для задания его высоты (12 символов), а атрибут cols — для задания его ширины (35 символов).

Стилизация элемента <textarea> с помощью CSS

Тег <textarea> считается заменяемым элементом, поскольку имеет собственные внутренние размеры. Стилизовать этот тег с помощью обычного CSS довольно просто.

Его допустимые и недопустимые значения можно подсвечивать с помощью псевдоклассов :valid и :invalid.

TIP

В большинстве браузеров <textarea> можно изменять по размеру благодаря CSS-свойству resize. Изменение размера включено по умолчанию. Вы можете отключить его, установив значение resize в none.

Пример тега HTML <textarea> с CSS-свойствами:

Пример текстового поля с тегом HTML <textarea>|W3Docs

html
<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .comment {
        width: 60%;
        height: 100px;
        padding: 10px;
        outline: 0;
        border: 3px solid #1c87c9;
        background: #d0e2bc;
        line-height: 20px;
      }
    </style>
  </head>
  <body>
    <form>
      <p>Here we use CSS styles to customize the look of the text field.</p>
      <textarea class="comment"> Send your comments to the author.</textarea>
      <br />
      <input type="submit" name="submitInfo" value="Submit" />
    </form>
  </body>
</html>

В этом примере мы используем CSS-стили для настройки внешнего вида текстового поля.

Атрибуты

АтрибутЗначениеОписание
autocompleteon, offУказывает, должен ли быть включён автозаполнитель для текстового поля.
autofocusautofocusОпределяет, что текстовое поле должно автоматически получить фокус при загрузке страницы.
colsnumberОпределяет видимую ширину текстового поля. Значение по умолчанию — 20 символов.
dirnamedirnameУказывает имя скрытого элемента формы, который будет содержать направление текста textarea при отправке.
disableddisabledОпределяет, что текстовое поле должно быть отключено.
formform_idОпределяет одну или несколько форм, к которым принадлежит текстовое поле (через id).
maxlengthnumberОпределяет максимальное количество символов, разрешённых в текстовом поле.
minlengthnumberОпределяет минимальное количество символов, разрешённых в текстовом поле.
nametextОпределяет имя для текстового поля.
placeholdertextОпределяет краткую подсказку, описывающую ожидаемое значение текстового поля. Подсказка отображается, когда поле пустое, и исчезает при получении фокуса.
readonlyreadonlyОпределяет, что текстовое поле доступно только для чтения.
requiredrequiredОпределяет, что текстовое поле должно быть заполнено перед отправкой формы.
rowsnumberОпределяет видимое количество строк в текстовом поле. Значение по умолчанию — 2.
spellchecktrue, false, defaultУказывает, должен ли текст в теге <textarea> проверяться на орфографию встроенным браузером/ОС.
wrapsoft, hardОпределяет, как текст в текстовом поле должен переноситься при отправке формы. soft (по умолчанию): текст отправляется без дополнительных переносов строк. hard: браузер вставляет переносы строк в зависимости от ширины (требуется cols).

Тег <textarea> также поддерживает глобальные атрибуты и атрибуты событий.

Как стилизовать тег HTML <textarea>

json
{
    "tag_name": "textarea"
}

Практика

Какие есть атрибуты у тега HTML <textarea>?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.