MathML Tabellen

Sobald alle grundlegenden mathematischen Notationen bekannt sind, bleibt die tabellarische Darstellung zu betrachten, die für matrixähnliche Ausdrücke und andere fortgeschrittene mathematische Layouts verwendet werden kann.

Voraussetzungen: Grundlegende Software installiert, grundlegende Kenntnisse im Umgang mit Dateien und HTML-Grundlagen (siehe Einführung in HTML. und HTML-Tabellen)
Ziel: Vertrautheit mit MathML-Tabellenelementen zu erlangen und sich einiger Anwendungsfälle bewusst zu sein.

MathML-Tabellenelemente

Die MathML-Tabellenelemente sind ähnlich den HTML-Tabellen: das <mtable>-Element repräsentiert eine mathematische Tabelle, es hat <mtr>-Elemente als Kinder (repräsentiert Zeilen), die jeweils <mtd>-Elemente als Kinder haben (repräsentiert Zellen). Ein <mtable>-Element kann überall in einer MathML-Formel eingefügt werden. Das <mtd>-Element kann eine beliebige Anzahl von MathML-Kindern enthalten und wird sie als <mrow>-Container anordnen.

Tabellen werden typischerweise für matrixähnliche Ausdrücke (einschließlich Vektoren) verwendet. Hier ist ein einfaches Beispiel aus dem Artikel über die CSS matrix()-Funktion:

html
<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>

Zellen erlauben, sich über mehrere Zeilen und Spalten zu erstrecken

Dies ist ebenfalls ähnlich wie bei HTML-Tabellen. Das <mtd>-Element akzeptiert die Attribute columnspan und rowspan, um anzuzeigen, 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 das Erstrecken über Spalten columnspan und nicht colspan genannt.

Verwendung für fortgeschrittenes Layout

Neben der Darstellung matrixähnlicher Objekte werden MathML-Tabellen manchmal für fortgeschrittene Layouts innerhalb mathematischer Formeln verwendet, zum Beispiel in Wikipedias Definition des Legendre-Symbols. Hier werden die verschiedenen Fälle auf drei verschiedenen Zeilen geschrieben, während die Werte und Bedingungen auf zwei verschiedene Spalten verteilt sind.

Warnung: Der <mtable>-Artikel bietet über spezielle Attribute wie Ausrichtung oder Abstände umfangreichere Layout-Optionen. Diese entstanden vor den CSS-Äquivalenten und wurden ursprünglich für Renderer entwickelt, die CSS-unabhängig waren. Diese Attribute sind jedoch möglicherweise nicht in allen Browsern implementiert. In Zukunft ist es wahrscheinlich, dass die Verwendungen von <mtable> für rein layoutbezogene Zwecke (d. h. nicht für tatsächliche matrixähnliche Objekte) durch CSS-basierte Alternativen ersetzt werden können.

Zusammenfassung

In diesem Artikel haben wir die <mtable>, <mtr> und <mtd>-Elemente besprochen, die das Äquivalent zu HTML-Tabellenelementen sind. Wir haben gesehen, wie man sie zur Darstellung matrixähnlicher Objekte verwendet und wie sie manchmal für fortgeschrittene Layouts eingesetzt werden.

Sie haben dieses Modul fast abgeschlossen – es gibt nur noch eine Sache zu tun. In der Bewertung zu drei berühmten mathematischen Formeln werden Sie Ihr neues Wissen nutzen, um einen kleinen mathematischen Artikel mit HTML und MathML neu zu schreiben.

Siehe auch