Baseline 2023 *
Newly available

Since January 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

* Some parts of this feature may have varying levels of support.

The MathML element allows you to create tables or matrices. Its children are elements (representing rows), each of them having elements as its children (representing cells). These elements are similar to

, and
elements of HTML.

Attributes

This element's attributes include the global MathML attributes. Some browsers may also support the following attributes:

align Non-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 align attribute 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.

columnalign Non-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) and right.

columnlines Non-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), solid and dashed.

columnspacing Non-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 .

frame Non-standard

Specifies borders of the entire table. Possible values are: none (default), solid and dashed.

framespacing Non-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 .

rowalign Non-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, center and top.

rowlines Non-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), solid and dashed.

rowspacing Non-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 .

width Non-standard

A 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

html

  X
  =
  
    
      A
      B
    
    
      C
      D
    
    
      E
      F
    
  

Technical summary

Specifications

Specification
MathML Core
# table-or-matrix-mtable

Browser compatibility

See also

  • (Table cell)
  • (Table row)