<mtable>
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2023.
* Some parts of this feature may have varying levels of support.
The <mtable> MathML element allows you to create tables or matrices. Its children are <mtr> elements (representing rows), each of them having <mtd> elements as its children (representing cells). These elements are similar to <table>, <tr> and <td> elements of HTML.
Attributes
This element's attributes include the global MathML attributes. Some browsers may also support the following attributes:
alignNon-standard-
Specifies the vertical alignment of the table with respect to its environment. Possible values are:
axis(default): The vertical center of the table aligns on the environment's axis (typically the minus sign).baseline: The vertical center of the table aligns on the environment's baseline.bottom: The bottom of the table aligns on the environments baseline.center: See baseline.top: The top of the table aligns on the environments baseline.
In addition, values of the
alignattribute can end with a row number (e.g.,align="center 3"). This allows you to align the specified row of the table rather than the whole table. A negative Integer value counts rows from the bottom of the table. columnalignNon-standard-
Specifies the horizontal alignment of the cells. Multiple values separated by space are allowed and apply to the corresponding columns (e.g.,
columnalign="left right center"). Possible values are:left,center(default) andright. columnlinesNon-standard-
Specifies column borders. Multiple values separated by space are allowed and apply to the corresponding columns (e.g.,
columnlines="none none solid"). Possible values are:none(default),solidanddashed. columnspacingNon-standard-
Specifies the space between table columns. Multiple values separated by space are allowed and apply to the corresponding columns (e.g.,
columnspacing="1em 2em"). Possible values are<length-percentage>. frameNon-standard-
Specifies borders of the entire table. Possible values are:
none(default),solidanddashed. framespacingNon-standard-
Specifies additional space added between the table and frame. The first value specifies the spacing on the right and left; the second value specifies the spacing above and below. Possible values are
<length-percentage>. rowalignNon-standard-
Specifies the vertical alignment of the cells. Multiple values separated by space are allowed and apply to the corresponding rows (e.g.,
rowalign="top bottom axis"). Possible values are:axis,baseline(default),bottom,centerandtop. rowlinesNon-standard-
Specifies row borders. Multiple values separated by space are allowed and apply to the corresponding rows (e.g.,
rowlines="none none solid"). Possible values are:none(default),solidanddashed. rowspacingNon-standard-
Specifies the space between table rows. Multiple values separated by space are allowed and apply to the corresponding rows (e.g.,
rowspacing="1em 2em"). Possible values are<length-percentage>. widthNon-standard-
A
<length-percentage>indicating the width of the entire table.
Note:
For the width attribute, some browsers may also accept legacy MathML lengths.
Examples
>Alignment with row number
<math display="block">
<mi>X</mi>
<mo>=</mo>
<mtable frame="solid" rowlines="solid" align="axis 3">
<mtr>
<mtd><mi>A</mi></mtd>
<mtd><mi>B</mi></mtd>
</mtr>
<mtr>
<mtd><mi>C</mi></mtd>
<mtd><mi>D</mi></mtd>
</mtr>
<mtr>
<mtd><mi>E</mi></mtd>
<mtd><mi>F</mi></mtd>
</mtr>
</mtable>
</math>
Technical summary
| Implicit ARIA role | None |
|---|
Specifications
| Specification |
|---|
| MathML Core> # table-or-matrix-mtable> |
Browser compatibility
Loading…