MathML-Brüche und -Wurzeln
Unter Verwendung von Textcontainern beschreibt dieser Artikel, wie man komplexere MathML-Ausdrücke erstellt, indem man Brüche und Wurzeln verschachtelt.
Teilbäume von <mfrac>, <msqrt> und <mroot>
Im Artikel Erste Schritte mit MathML haben wir bereits das <mfrac>
-Element kennengelernt, um einen Bruch zu beschreiben. Betrachten wir ein einfaches Beispiel, das neue Elemente für Wurzeln (<msqrt>
und <mroot>
) hinzufügt:
<math>
<mfrac>
<mtext>child1</mtext>
<mtext>child2</mtext>
</mfrac>
</math>
<br />
<math>
<msqrt>
<mtext>child1</mtext>
<mtext>child2</mtext>
<mtext>...</mtext>
<mtext>childN</mtext>
</msqrt>
</math>
<br />
<math>
<mroot>
<mtext>child1</mtext>
<mtext>child2</mtext>
</mroot>
</math>
Unten sehen Sie einen Screenshot, wie es von einem Browser gerendert wird:
- Wir wissen bereits, dass das
<mfrac>
-Element als Bruch gerendert wird: Das erste Kind (der Zähler) wird über dem zweiten Kind (der Nenner) gezeichnet, getrennt durch einen horizontalen Strich. - Das
<msqrt>
wird als Quadratwurzel gerendert: seine Kinder werden wie ein<mrow>
angeordnet, vorangestellt von einem Wurzelsymbol √ und vollständig von einer Überline bedeckt. - Schließlich wird das
<mroot>
-Element als n-te Wurzel gerendert: Das erste Element wird vom Radikalsymbol bedeckt, während das zweite Element als Grad der Wurzel verwendet und als Präfix-Superscript gerendert wird.
Aktives Lernen: Verschachtelung verschiedener Elemente
Hier ist eine Übung, um zu überprüfen, ob Sie die Beziehung zwischen einem MathML-Teilbaum und dessen visueller Darstellung verstanden haben. Das Dokument enthält eine MathML-Formel und Sie müssen alle Teilbäume überprüfen, die einem Teilbaum in dieser MathML-Formel entsprechen. Sobald Sie fertig sind, können Sie den Quelltext der MathML-Formel inspizieren und überprüfen, ob er Ihrer Erwartung entspricht.
Dehnbare Radikalsymbole
Wie zuvor gesehen, dehnt sich die Überlinie der <msqrt>
- und <mroot>
-Elemente horizontal aus, um ihren Inhalt abzudecken. Tatsächlich dehnt sich auch das Wurzelsymbol √ aus, um so hoch wie der Inhalt zu sein.
<math display="block">
<mroot>
<msqrt>
<mfrac>
<mn>1</mn>
<mn>2</mn>
</mfrac>
</msqrt>
<mn>3</mn>
</mroot>
</math>
Warnung: Spezielle Mathe-Fonts sind in der Regel erforderlich, um diese Dehnung zu ermöglichen, das vorherige Beispiel basiert auf Web-Fonts.
Brüche ohne Strich
Einige mathematische Konzepte werden manchmal mit bruchähnlichen Notationen geschrieben, wie zum Beispiel Binomialkoeffizienten oder Legendre-Symbole. Es ist angemessen, ein <mfrac>
-Element zu verwenden, um solche Notationen zu markieren. Für bruchähnliche Notationen, die keinen horizontalen Strich zeichnen, fügen Sie dem <mfrac>
-Element ein Attribut linethickness="0"
hinzu:
<math display="block">
<mrow>
<mo>(</mo>
<mfrac linethickness="0">
<mn>3</mn>
<mn>2</mn>
</mfrac>
<mo>)</mo>
</mrow>
<mo>=</mo>
<mn>3</mn>
<mo>≠</mo>
<mfrac>
<mn>3</mn>
<mn>2</mn>
</mfrac>
</math>
Hinweis:
Obwohl das linethickness
-Attribut verwendet werden kann, um eine beliebige Dicke anzugeben, ist es besser, den Standardwert beizubehalten, der aus in der Mathe-Font angegebenen Parametern berechnet wird.
Zusammenfassung
In dieser Lektion haben wir gesehen, wie man Brüche und Wurzeln mit den Elementen <mfrac>
, <msqrt>
und <mroot>
erstellt. Wir haben einige spezielle Funktionen dieser Elemente bemerkt, nämlich das Bruch- und das Radikalsymbol. Wir haben gelernt, wie das linethickness
-Attribut verwendet wird, um Brüche ohne Striche zu zeichnen. Im nächsten Artikel werden wir mit grundlegenden mathematischen Notationen fortfahren und Schriften betrachten.