<textarea>

HTML <textarea> Tag

The <textarea> tag defines a form field where user can input a multi-line text. Unlike the <input> tag, text wrapping inside <textarea> is allowed when the form is submitted.

A text area can have an unlimited number of characters. The text within this tag is rendered in a fixed-width font (usually Courier).

The <textarea> is used inside the <form> tag.

Syntax

Syntax

The <textarea> tag comes in pairs. The content is written between the opening (<textarea>) and closing (</textarea>) tags.

To define the size of a text field, use rows and cols attributes, or the CSS height and width properties.

Example of the HTML <textarea> tag:

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
  </head>
  <body>
    <form action="/form/submit" action="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>

Result

In this example we use the <textarea> to define the text field, the name attribute to assign a name to this field (“comment”), the rows attribute to set its height (12 symbols) and the cols attribute to set its width (35 symbols).

Styling the <textarea> element with CSS

Styling the <textarea> element with CSS

The <textarea> tag is considered to be a replaced element, as it has some intrinsic dimensions. Styling this tag is relatively easy with regular CSS.

Its valid and invalid values can be highlighted with the :valid and :invalid pseudo-classes. Valid and invalid values of a <textarea>element can be highlighted using the :valid and :invalid pseudo-classes.

In most browsers, <textarea> is resizable due to the CSS resize property. Resizing is enabled by default. You can disable it putting the resize value to none.

Example of the HTML <textarea> tag with CSS properties:

<!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>

In this example we use CSS styles to customize the look of the text field.

Attributes

Attributes

AttributeValueDescription
autocompleteonoffSpecifies whether or not a text field should have autocomplete enabled.
autofocusautofocusDefines that a text area should automatically get focus when the page loads.
colsnumberDefines the visible width of a text area.
Default value is 20 symbols.
dirnametextareaname.dirDefines the text direction of the textarea when submitted.
disableddisabledDefines that a text area should be disabled.
formform_idDefines one or more forms the text area belongs to (via id).
maxlenghtnumberDefines the maximum number of characters allowed in the text area.
minlengthnumberDefines the minimum number of characters allowed in the text area.
nametextDefines a name for a text area.
placeholdertextDefines a short hint that describes the expected value of a text area. The hint is shown when the field is empty, and disappears when it gets focus.
readonlyreadonlyDefines that a text area is read-only.
requiredrequiredDefines that a text area must be filled out before the form is sent.
rowsnumberDefines a visible number of rows in a text area.
Default value is 2.
spellchecktruefalsedefaultSpecifies whether the text in the <textarea> tag should be spell checked by the underlying browser/OS.
wrapDefines how the text in a text area is to be wrapped when the form is submitted.
soft-(default value) the text is sent without any additional line breaks inserted.
hard-the browser automatically inserts line breaks so that each line has no more than the width of the control; for this to take effect the cols attribute must be specified.

The <textarea> tag also supports the Global Attributes and the Event Attributes.

How to style <textarea> tag? Common properties to alter the visual weight/emphasis/size of text in <textarea> tag:

CSS font-style property sets the style of the font. normal | italic | oblique | initial | inherit. CSS font-family property specifies a prioritized list of one or more font family names and/or generic family names for the selected element. CSS font-size property sets the size of the font. CSS font-weight property defines whether the font should be bold or thick. CSS text-transform property controls text case and capitalization. CSS text-decoration property specifies the decoration added to text, and is a shorthand property for text-decoration-line, text-decoration-color, text-decoration-style.

Coloring text in <textarea> tag:

CSS color property describes the color of the text content and text decorations. CSS background-color property sets the background color of an element.

Text layout styles for <textarea> tag:

CSS text-indent property specifies the indentation of the first line in a text block. CSS text-overflow property specifies how overflowed content that is not displayed should be signalled to the user. CSS white-space property specifies how white-space inside an element is handled. CSS word-break property specifies where the lines should be broken.

Other properties worth looking at for <textarea> tag:

CSS text-shadow property adds shadow to text. CSS text-align-last property sets the alignment of the last line of the text. CSS line-height property specifies the height of a line. CSS letter-spacing property defines the spaces between letters/characters in a text. CSS word-spacing property sets the spacing between words.



请遵守《互联网环境法规》文明发言,欢迎讨论问题
扫码反馈

扫一扫,反馈当前页面

咨询反馈
扫码关注
返回顶部