The HTML <textarea>
element represents a multi-line plain-text editing control.
Content categories | Flow content, phrasing content, Interactive content, listed, labelable, resettable, and submittable form-associated element. |
---|---|
Permitted content | Text |
Tag omission | None, both the starting and ending tag are mandatory. |
Permitted parents | Any element that accepts phrasing content. |
Permitted ARIA roles | None |
DOM interface | HTMLTextAreaElement |
This element includes the global attributes.
autocapitalize
non standardnone
: Completely disables automatic capitalizationsentences
: Automatically capitalize the first letter of sentences.words
: Automatically capitalize the first letter of words.characters
: Automatically capitalize all characters.on
: deprecated Deprecated since iOS 5.off
: deprecated Deprecated since iOS 5.autocomplete
HTML5
off
: The user must explicitly enter a value into this field for every use, or the document provides its own auto-completion method; the browser does not automatically complete the entry.on
: The browser can automatically complete the value based on values that the user has entered during previous uses.If the autocomplete attribute is not specified on a <textarea>
element, then the browser uses the autocomplete attribute value of the <textarea>
element's form owner. The form owner is either the <form>
element that this <textarea>
element is a descendant of or the form element whose id is specified by the form attribute of the input element. For more information, see the autocomplete
attribute in <form>
.
autofocus
HTML5
cols
20
(HTML5).disabled
<fieldset>
; if there is no containing element with the disabled
attribute set, then the control is enabled.)form
HTML5
<textarea>
element is associated with (its "form owner"). The value of the attribute must be the ID of a form element in the same document. If this attribute is not specified, the <textarea>
element must be a descendant of a form element. This attribute enables you to place <textarea>
elements anywhere within a document, not just as descendants of their form elements.maxlength
HTML5
minlength
HTML5
name
placeholder
HTML5
readonly
disabled
attribute, the readonly
attribute does not prevent the user from clicking or selecting in the control. The value of a read-only control is still submitted with the form.required
HTML5
rows
selectionDirection
HTML5
selectionEnd
selectionStart
spellcheck
HTML5
true
indicates that the element needs to have its spelling and grammar checked. The value default
indicates that the element is to act according to a default behavior, possibly based on the parent element's own spellcheck
value. The value false
indicates that the element should not be checked.wrap
HTML5
hard
: The browser automatically inserts line breaks (CR+LF) so that each line has no more than the width of the control; the cols
attribute must be specified.soft
: The browser ensures that all line breaks in the value consist of a CR+LF pair, but does not insert any additional line breaks.If this attribute is not specified, soft
is its default value.
Gecko 2.0 introduced support for resizable textareas. This is controlled by the resize
CSS property. Resizing of textareas is enabled by default, but you can explicitly disable it by including the following CSS:
textarea { resize: none; }
In regards to CSS, an <textarea>
is a replaced element. The HTML specification doesn't define where the baseline of a <textarea>
is. So different browsers set it to different positions. For Gecko, the <textarea>
baseline is set on the baseline of the first line of the textarea's first line, on another browser it may be set on the bottom of the <textarea>
box. Don't use vertical-align
: baseline
on it, as the behavior will be unpredictable.
A textarea has intrinsic dimensions, like a raster image.
<textarea name="textarea" rows="10" cols="50">Write something here</textarea>
Specification | Status | Comment |
---|---|---|
WHATWG HTML Living Standard The definition of '<textarea>' in that specification. | Living Standard | |
HTML5 The definition of '<textarea>' in that specification. | Recommendation | |
HTML 4.01 Specification The definition of '<textarea>' in that specification. | Recommendation |
Feature | Chrome | Edge | Firefox (Gecko)[4] | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 1.0 (1.7 or earlier)[2] 6.0 (6.0)[3] | (Yes) | (Yes) | (Yes) |
autocomplete attribute | No support | ? | No support | No support | No support | No support |
autofocus attribute | (Yes) | ? | 4.0 (2.0) | 10 | (Yes) | (Yes) |
maxlength attribute | (Yes) | ? | 4.0 (2.0) | 10 | (Yes) | (Yes) |
placeholder attribute | (Yes) | ? | 4.0 (2.0) | 10 | 11.50 | 5.0 |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 1.0 (1.0)[2] 6.0 (6.0)[3] | (Yes) | (Yes) | (Yes) [1] |
autofocus attribute | ? | ? | 4.0 (2.0) | No support | ? | ? |
autocomplete attribute | No support | ? | No support | No support | No support | No support |
maxlength attribute | ? | ? | 4.0 (2.0) | No support | ? | ? |
placeholder attribute | ? | ? | 4.0 (2.0) | ? | 11.50 | 4.0 |
[1] Unlike other major browsers, a default style of
is applied to disabled opacity
: 0.4<textarea>
elements.
[2] Before Gecko 6.0 (Firefox 6.0 / Thunderbird 6.0 / SeaMonkey 2.3), when a <textarea>
is focused, the insertion point was placed at the end of the text by default. Other major browsers place the insertion point at the beginning of the text.
[3] A default background-image
gradient is applied to all <textarea>
elements, which can be disabled using background-image: none
.
[4] Prior to Firefox 51, Firefox returned 0 as the value of both HTMLTextAreaElement.selectionStart
and HTMLTextAreaElement.selectionEnd
. Starting in Firefox 51, it correctly returns the offset of the character following the current position of the text input cursor.
Other form-related elements: <form>
, <button>
, <datalist>
, <legend>
, <label>
, <select>
, <optgroup>
, <option>
, <input>
, <keygen>
, <fieldset>
, <output>
, <progress>
and <meter>
.
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea