The Text interface represents the textual content of Element or Attr.
If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.
New documents have a single Text node for each block of text. Over time, more Text nodes may be created as the document's content changes. The Node.normalize() method merges adjacent Text objects back into a single node for each block of text.
<div id="interfaceDiagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveAspectRatio="xMinYMin meet"><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">EventTarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#D4DDE4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Node" target="_top"><rect x="151" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="188.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Node</text></a><polyline points="226,25 236,20 236,30 226,25" stroke="#D4DDE4" fill="none"/><line x1="236" y1="25" x2="266" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/CharacterData" target="_top"><rect x="266" y="1" width="130" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="331" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">CharacterData</text></a><polyline points="396,25 406,20 406,30 396,25" stroke="#D4DDE4" fill="none"/><line x1="406" y1="25" x2="436" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Text" target="_top"><rect x="436" y="1" width="75" height="50" fill="#F4F7F8" stroke="#D4DDE4" stroke-width="2px" /><text x="473.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Text</text></a></svg></div>
a:hover text { fill: #0095DD; pointer-events: all;}
Constructor
Text()'- Returns a
Textnode with the parameter as its textual content.
Properties
Inherits properties from its parent, CharacterData.
Text.isElementContentWhitespaceRead only '- Returns a
Booleanflag indicating whether or not the text node contains only whitespace. Text.wholeTextRead only- Returns a
DOMStringcontaining the text of allTextnodes logically adjacent to thisNode, concatenated in document order. Text.assignedSlotRead only- Returns the
HTMLSlotElementobject associated with the element.
Properties included from Slotable
The Text interface includes the following property, defined on the Slotable mixin.
Slotable.assignedSlotRead only- Returns a
HTMLSlotElementrepresenting the<slot>the node is inserted in.
Methods
Inherits methods from its parent, CharacterData.
Text.replaceWholeText'- Replaces the text of the current node and all logically adjacent nodes with the specified text.
Text.splitText- Breaks the node into two nodes at a specified offset.
Specifications
| Specification | Status | Comment |
|---|---|---|
| DOMThe definition of 'Text' in that specification. | Living Standard | Removed the isElementContentWhitespace property.
Removed the |
| Document Object Model (DOM) Level 3 Core SpecificationThe definition of 'Text' in that specification. | Obsolete | Added the isElementContentWhitespace and wholeText properties.
Added the |
| Document Object Model (DOM) Level 2 Core SpecificationThe definition of 'Text' in that specification. | Obsolete | No change from Document Object Model (DOM) Level 1 Specification. |
| Document Object Model (DOM) Level 1 SpecificationThe definition of 'Text' in that specification. | Obsolete | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
Text
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support Yes |
IE
Full support Yes |
Opera
Full support Yes |
Safari
Full support Yes |
WebView Android
Full support Yes |
Chrome Android
? |
Firefox Android
Full support Yes |
Opera Android
Full support Yes |
Safari iOS
Full support Yes |
Samsung Internet Android
? |
| Chrome
Full support 28 |
Edge
Full support ≤79 |
Firefox
Full support 24 |
IE
No support No |
Opera
Full support 15 |
Safari
Full support 8 |
WebView Android
Full support Yes |
Chrome Android
Full support 28 |
Firefox Android
Full support 24 |
Opera Android
Full support 14 |
Safari iOS
Full support 8 |
Samsung Internet Android
Full support 2.0 | |
assignedSlot
|
Chrome
Full support 53 |
Edge
Full support ≤18 |
Firefox
Full support Yes |
IE
No support No |
Opera
Full support 40 |
Safari
Full support 10.1 |
WebView Android
Full support 53 |
Chrome Android
Full support 53 |
Firefox Android
Full support Yes |
Opera Android
Full support 41 |
Safari iOS
Full support 10.3 |
Samsung Internet Android
Full support 6.0 |
| Chrome
No support No |
Edge
No support No |
Firefox
No support ? — 10 |
IE
No support No |
Opera
No support No |
Safari
No support No |
WebView Android
No support No |
Chrome Android
No support No |
Firefox Android
No support ? — 10 |
Opera Android
No support No |
Safari iOS
No support No |
Samsung Internet Android
No support No | |
| Chrome
No support ? — 45 |
Edge
No support 12 — 79 |
Firefox
No support ? — 10 |
IE
Full support Yes |
Opera
No support ? — 32 |
Safari
No support No |
WebView Android
No support ? — 45 |
Chrome Android
No support ? — 45 |
Firefox Android
No support ? — 10 |
Opera Android
No support ? — 32 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 | |
splitText
|
Chrome Full support 1 Full support 1 Notes' Before Chrome 30, the |
Edge
Full support 12 |
Firefox
Full support 1 |
IE
Full support Yes |
Opera Full support Yes Full support Yes Notes' Before Opera 17, the |
Safari Full support Yes Full support Yes Notes' The |
WebView Android Full support Yes Full support Yes Notes' Before version 4.4, the |
Chrome Android Full support 18 Full support 18 Notes' Before Chrome 30, the |
Firefox Android
Full support 4 |
Opera Android Full support Yes Full support Yes Notes' Before Opera 17, the |
Safari iOS Full support Yes Full support Yes Notes' The |
Samsung Internet Android Full support 1.0 Full support 1.0 Notes' Before Samsung Internet 2.0, the |
wholeText
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support 3.5 |
IE
Full support Yes |
Opera
Full support Yes |
Safari
Full support Yes |
WebView Android
Full support Yes |
Chrome Android
? |
Firefox Android
Full support 4 |
Opera Android
Full support Yes |
Safari iOS
Full support Yes |
Samsung Internet Android
? |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Experimental. Expect behavior to change in the future.'
- Experimental. Expect behavior to change in the future.
- Non-standard. Expect poor cross-browser support.'
- Non-standard. Expect poor cross-browser support.
- Deprecated. Not for use in new websites.'
- Deprecated. Not for use in new websites.
- See implementation notes.'
- See implementation notes.
See also
Text by Mozilla Contributors is licensed under CC-BY-SA 2.5.