HTML5-Handbuch - die neuen Features von HTML5
Gleichung
Erläuterung
Im Präsentationsmarkup von MathML ist nicht wirklich erkennbar, was ein Teilausdruck innerhalb der Gesamtformel ist. Um beliebige Ausdrücke oder Teilausdrücke zu markieren, steht das
mrow
-Element zur Verfügung. Im obigen Beispiel wird von diesem Element reichlich Gebrauch gemacht. Das Element kann auch, wie im Beispiel zu sehen, verschachtelt werden, um die logische Hierarchie zwischen komplexeren und elementareren Ausdrücken abzubilden. Das
mrow
-Element markiert Ausdrücke auf einer horizontalen Ebene ( row = Reihe). Deswegen dient es im obigen Beispiel auch dazu, die beiden Horizontebenen Zähler und Nenner des Bruchs zu markieren.
Schema:
Zähler
Nenner
Das
mfrac
-Element schließt den gesamten Bruch ein (frac = fraction = Bruch). Es erwartet zwei innere Elemente. Das erste markiert den Zähler, das zweite den Nenner.
Das Gleichheitszeichen der Gleichung ist im Präsentationsmarkup von MathML einfach ein Operator, der wie andere Operatoren durch
…
ausgezeichnet wird.
Wurzeln werden durch
…
ausgezeichnet (sqrt = square root = Quadratwurzel). Der Browser muss die Wurzel so rendern, dass sie den gesamten Elementinhalt einschließt.
In MathML gibt es auch etliche benannte Zeichen (named entities) für die zahlreichen mathematischen Symbole und Sonderzeichen. Zwei davon sind im obigen Beispiel enthalten:
±
für das Zeichen ± und
⁢
für das in Ausdrücken meist nicht explizit notierte Multiplikationszeichen ( invisible times = unsichtbares Malzeichen).
4.6 Backgrounds
Die wechselhafte Geschichte von HTML schlägt sich auch in der verwendeten Terminologie rund um Elemente zur Inhaltsstrukturierung nieder. Besonders verwirrend sind die Unterschiede in Bezug auf die sogenannten Content-Modelle.
Eine andere wichtige Seite von HTML5 ist der Abschied von der Idee »valider Dokumente«. Im Klartext bedeutet das: Sie dürfen sogar eigene Elemente erfinden und in HTML verwenden.
4.6.1 Content-Modelle
HTML5 unterscheidet sich von HTML 4.01 nicht nur durch einige weggefallene und hinzugekommene Sprachelemente. Auch die Terminologie der HTML-Spezifikation hat sich stark verändert. Ein Grund dafür ist, dass HTML aus seiner ursprünglichen Verankerung des allgemeinen Markup-Konzepts von SGML herausgelöst wurde. Besonders bei den sogenannten Content-Modellen, in welche die Struktur-Elemente von HTML eingeordnet werden, gibt es erhebliche Unterschiede.
Content-Modelle in HTML 4.01
HTML 4.01 unterscheidet zwei Basis-Content-Modelle:
• Block-Elemente sind Elemente mit Inhalt, die eine neue Zeile im Textfluss und einen Block – ein Element, welches die gesamte Breite des Browserfensters einnimmt – erzeugen. Dazu gehören Textabsätze, Überschriften, Listen, Trennlinien, Tabellen, usw.
• Inline-Elemente sind Elemente, die keine neue Zeile im Textfluss erzeugen und reine Auszeichnungen innerhalb von Text sind.
Aus diesen beiden Basis-Typen wird ein zusammengesetztes Content-Modell erzeugt, der sogenannte Flow-Content . Er umfasst (neben Text) die Summe aller Block- und Inline-Elemente.
In der Strict-Variante von HTML 4.01 darf das
body
-Element keinen direkten Text enthalten. Der Inhalt auf der nächsttieferen Hierarchie-Ebene darf nur aus Block-Elementen bestehen oder aus einigen Ausnahme-Elementen wie
script
(für Script-Bereiche) oder die Elemente für Änderungsmarkierungen (
ins
und
del
).
Inline-Elemente können niemals Block-Elemente zum Inhalt haben, sondern nur Text und andere Inline-Elemente. Unter den Block-Elementen gibt es solche, die Flow-Content enthalten können, wie etwa das
div
-Element für allgemeine Bereiche, und andere, die neben Text nur Inline-Elemente enthalten können, wie etwa Textabsätze oder Überschriften. Und dann gibt es noch Elemente, die freizügigen Flow-Content enthalten dürfen, selbst aber nur an bestimmten Stellen vorkommen dürfen, wie etwa Listenelemente (
li
) oder Tabellenzellen (
td
).
Das
Weitere Kostenlose Bücher