MathML-Tabellen
Please help us by answering a few questions.
Wenn alle grundlegenden mathematischen Notationen bekannt sind, bleibt noch die tabellarische Anordnung zu berücksichtigen, die für matrixähnliche Ausdrücke und andere fortgeschrittene mathematische Layouts verwendet werden kann.
MathML-tabellarische Elemente
Die MathML-tabellarischen Elemente sind den HTML-Tabellen ähnlich: Das <mtable>
-Element stellt eine mathematische Tabelle dar, es hat <mtr>
-Elemente als Kinder (die Zeilen darstellen), von denen jedes <mtd>
-Elemente als Kinder hat (die Zellen darstellen). Ein <mtable>
-Element kann überall in einer MathML-Formel eingefügt werden. Das <mtd>
-Element kann beliebig viele MathML-Kinder enthalten und wird diese als <mrow>
-Container anordnen.
Tabellen werden typischerweise für matrixähnliche Ausdrücke (einschließlich Vektoren) verwendet. Hier ist ein einfaches Beispiel, das dem Artikel über die CSS-matrix()
-Funktion entnommen ist:
<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>
Zulassen, dass Zellen sich über mehrere Zeilen und Spalten erstrecken
Dies ist wiederum vergleichbar mit HTML-Tabellen. Das <mtd>
-Element akzeptiert die Attribute columnspan
und rowspan
, um anzugeben, dass sich die Zelle über mehrere Zeilen und Spalten erstreckt. Unten erstreckt sich die innere Matrix über zwei Spalten der äußeren Matrix:
Hinweis:
Aus historischen Gründen wird das MathML-Attribut für die Spaltenüberspannung columnspan
und nicht colspan
genannt.
Verwendung für fortgeschrittenes Layout
Neben der Darstellung von matrixähnlichen Objekten werden MathML-Tabellen manchmal für fortgeschrittenes Layout innerhalb mathematischer Formeln verwendet, zum Beispiel in Wikipedias Definition des Legendre-Symbols. Hier werden die verschiedenen Fälle in drei verschiedenen Zeilen dargestellt, während die Werte und Bedingungen in zwei verschiedenen Spalten platziert sind.
Warnung:
Der <mtable>
-Artikel bietet fortgeschrittenere Layoutoptionen über spezielle Attribute wie Ausrichtung oder Abstände. Diese entstanden vor CSS-Äquivalenten und wurden ursprünglich für Renderer entwickelt, die sich der CSS nicht bewusst waren. Diese Attribute sind jedoch möglicherweise nicht in allen Browsern implementiert. In Zukunft ist es wahrscheinlich, dass die Verwendung von <mtable>
zu reinen Layoutzwecken (also nicht für echte matrixähnliche Objekte) durch CSS-basierte Alternativen ersetzt werden kann.
Zusammenfassung
In diesem Artikel haben wir die <mtable>
, <mtr>
und <mtd>
-Elemente überprüft, die den HTML-Elementen für Tabellen entsprechen. Wir haben gesehen, wie man sie zur Darstellung von matrixähnlichen Objekten verwendet und wie sie manchmal für fortgeschrittenes Layout eingesetzt werden.
Sie haben dieses Modul fast abgeschlossen – wir haben nur noch eine weitere Sache zu tun. In der Bewertung der drei berühmten mathematischen Formeln verwenden Sie Ihr neues Wissen, um einen kleinen mathematischen Artikel mit HTML und MathML neu zu schreiben.