Firefox Tomorrow

mathml element

<mtable>

View on MDN ↗

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:

  • align

    • : 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

    • : 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

    • : 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

    • : 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.
  • frame

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

    • : 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.
  • rowalign

    • : 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

    • : 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

    • : 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.
  • width

[!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>
Interactive exampleOpen the canonical MDN source to run this embedded demo.

Technical summary

Implicit ARIA role None

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.

See also

  • mtd (Table cell)
  • mtr (Table row)