HTMLTableElement

The HTMLTableElement interface provides special properties and methods (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating the layout and presentation of tables in an HTML document.

Properties

Inherits properties from its parent, HTMLElement.

HTMLTableElement.caption
Is a HTMLTableCaptionElement representing the first <caption> that is a child of the element, or null if none is found. When set, if the object doesn't represent a <caption>, a DOMException with the HierarchyRequestError name is thrown. If a correct object is given, it is inserted in the tree as the first child of this element and the first <caption> that is a child of this element is removed from the tree, if any.
HTMLTableElement.tHead
Is a HTMLTableSectionElement representing the first <thead> that is a child of the element, or null if none is found. When set, if the object doesn't represent a <thead>, a DOMException with the HierarchyRequestError name is thrown. If a correct object is given, it is inserted in the tree immediately before the first element that is neither a <caption>, nor a <colgroup>, or as the last child if there is no such element, and the first <thead> that is a child of this element is removed from the tree, if any.
HTMLTableElement.tFoot
Is a HTMLTableSectionElement representing the first <tfoot> that is a child of the element, or null if none is found. When set, if the object doesn't represent a <tfoot>, a DOMException with the HierarchyRequestError name is thrown. If a correct object is given, it is inserted in the tree immediately before the first element that is neither a <caption>, a <colgroup>, nor a <thead>, or as the last child if there is no such element, and the first <tfoot> that is a child of this element is removed from the tree, if any.
HTMLTableElement.rowsRead only
Returns a live HTMLCollection containing all the rows of the element, that is all <tr> that are a child of the element, or a child of one of its <thead>, <tbody> and <tfoot> children. The rows members of a <thead> appear first, in tree order, and those members of a <tbody> last, also in tree order. The HTMLCollection is live and is automatically updated when the HTMLTableElement changes.
HTMLTableElement.tBodiesRead only
Returns a live HTMLCollection containing all the <tbody> of the element. The HTMLCollection is live and is automatically updated when the HTMLTableElement changes.

Obsolete Properties

Warning: The following properties are obsolete.  You should avoid using them.

HTMLTableElement.align  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing an enumerated value reflecting the align attribute. It indicates the alignment of the element's contents with respect to the surrounding context. The possible values are "left", "right", and "center".
HTMLTableElement.bgColor  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the background color of the cells. It reflects the obsolete bgcolor attribute.
HTMLTableElement.border  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the width in pixels of the border of the table. It reflects the obsolete border attribute.
HTMLTableElement.cellPadding  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the width in pixels of the horizontal and vertical sapce between cell content and cell borders. It reflects the obsolete cellpadding attribute.
HTMLTableElement.cellSpacing  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the width in pixels of the horizontal and vertical separation between cells. It reflects the obsolete cellspacing attribute.
HTMLTableElement.frame  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the type of the external borders of the table. It reflects the obsolete frame attribute and can take one of the following values: "void", "above", "below", "hsides", "vsides", "lhs", "rhs", "box", or "border".
HTMLTableElement.rules  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the type of the internal borders of the table. It reflects the obsolete rules attribute and can take one of the following values: "none", "groups", "rows", "cols", or "all".
HTMLTableElement.summary  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing a description of the purpose or the structure of the table. It reflects the obsolete summary attribute.
HTMLTableElement.width  This is an obsolete API and is no longer guaranteed to work.
Is a DOMString containing the length in pixels or in percentage of the desired width fo the entire table. It reflects the obsolete width attribute.

Methods

Inherits methods from its parent, HTMLElement.

HTMLTableElement.createTHead()
Returns an HTMLTableSectionElement representing the first <thead> that is a child of the element. If none is found, a new one is created and inserted in the tree immediately before the first element that is neither a <caption>, nor a <colgroup>, or as the last child if there is no such element.
HTMLTableElement.deleteTHead()
Removes the first <thead> that is a child of the element.
HTMLTableElement.createTFoot()
Returns an HTMLTableSectionElement representing the first <tfoot> that is a child of the element. If none is found, a new one is created and inserted in the tree as the last child.
HTMLTableElement.deleteTFoot()
Removes the first <tfoot> that is a child of the element.
HTMLTableElement.createTBody()
Returns a HTMLTableSectionElement representing a new <tbody> that is a child of the element. It is inserted in the tree after the last element that is a <tbody>, or as the last child if there is no such element.
HTMLTableElement.createCaption()
Returns an HTMLElement representing the first <caption> that is a child of the element. If none is found, a new one is created and inserted in the tree as the first child of the <table> element.
HTMLTableElement.deleteCaption()
Removes the first <caption> that is a child of the element.
HTMLTableElement.insertRow()
Returns an HTMLTableRowElement representing a new row of the table. It inserts it in the rows collection immediately before the <tr> element at the given index position. If necessary a <tbody> is created. If the index is -1, the new row is appended to the collection. If the index is smaller than -1 or greater than the number of rows in the collection, a DOMException with the value IndexSizeError is raised.
HTMLTableElement.deleteRow()
Removes the row corresponding to the index given in parameter. If the index value is -1 the last row is removed; if it smaller than -1 or greater than the amount of rows in the collection, a DOMException with the value IndexSizeError is raised.

Specifications

Specification Status Comment
HTML Living Standard
The definition of 'HTMLTableElement' in that specification.
Living Standard Added the sortable property and the stopSorting() method.
HTML5
The definition of 'HTMLTableElement' in that specification.
Recommendation Added the createTBody() method.
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'HTMLTableElement' in that specification.
Obsolete Defined when caption, tHead, tFoot, insertRow(), and deleteRow() raise exceptions.
Document Object Model (DOM) Level 1 Specification
The definition of 'HTMLTableElement' in that specification.
Obsolete Initial definition.

Browser compatibility

BCD tables only load in the browser

See also

  • The HTML element implementing this interface: <table>.