MathML 表格元素
MathML 表格元素與 HTML 表格 相似:<mtable> 元素代表一個數學表格,它的子元素是 <mtr> 元素(代表行),而每一行又包含 <mtd> 元素作為子元素(代表單元格)。<mtable> 元素可以插入到 MathML 公式中的任何位置。<mtd> 元素可以包含任意數量的 MathML 子元素,並將它們佈局為一個 <mrow> 容器。
表格通常用於類似矩陣的表示式(包括向量)。以下是一個取自關於 CSS matrix() 函式的文章中的基本示例:
<math display="block">
<mrow>
<mo>(</mo>
<mtable>
<mtr>
<mtd>
<mi>a</mi>
</mtd>
<mtd>
<mi>c</mi>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<msub>
<mi>t</mi>
<mi>x</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mi>b</mi>
</mtd>
<mtd>
<mi>d</mi>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<msub>
<mi>t</mi>
<mi>y</mi>
</msub>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
</mtr>
<mtr>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>0</mn>
</mtd>
<mtd>
<mn>1</mn>
</mtd>
</mtr>
</mtable>
<mo>)</mo>
</mrow>
</math>
允許單元格跨越多行和多列
這同樣與 HTML 表格 類似。<mtd> 元素接受 columnspan 和 rowspan 屬性,用於指示單元格跨越多個行和列。下方內部矩陣跨越了外部矩陣的兩列。
注意: 出於歷史原因,MathML 中用於列跨越的屬性名為 columnspan,而不是 colspan。
用於高階佈局的用法
除了表示類似矩陣的物件外,MathML 表格有時也用於數學公式內的複雜佈局,例如在 維基百科的勒讓德符號定義 中。在此,不同的情況寫在三行中,而值和條件則放置在兩列中。
警告: <mtable> 文章 透過特殊屬性(如對齊或間距)提供了更高階的佈局選項。這些屬性起源於 CSS 等效項之前,最初是為非 CSS 感知的渲染器設計的。但是,這些屬性可能並未在所有瀏覽器中實現。未來,<mtable> 用於純佈局目的(即非實際的類似矩陣的物件)很可能被基於 CSS 的替代方案取代。
總結
在本篇文章中,我們回顧了 <mtable>、<mtr> 和 <mtd> 元素,它們是 HTML 中表格元素的對應項。我們瞭解瞭如何使用它們來表示類似矩陣的物件,以及它們有時如何用於複雜的佈局。
您幾乎完成了本模組的學習——我們只剩最後一件事要做。在 三個著名的數學公式評估 中,您將運用新知識,使用 HTML 和 MathML 重寫一篇小數學文章。