Hilfe:Tags

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Ein charakteristisches Merkmal der Wikitexte sind die Tags. Sie sind den Auszeichnungssprachen XML und HTML entlehnt.

Auf dieser Hilfeseite wird ein vollständiger Überblick zur Anwendung in Wiki-Projekten gegeben. Kurzfassungen finden sich unter Hilfe:Textgestaltung.

Eine andere Bedeutung von tags im Wiki wird unter Bearbeitungsmarkierung erläutert.

Index[Bearbeiten]

Direkt zum Element:
<!-- --> a abbr Abschnitt acronym b bdi big blockquote br caption categorytree center charinsert cite code colgroup command dfn dd del div dl dt em font gallery h1 h2 h3 h4 h5 h6 hiddentext hiero hr i imagemap img includeonly inputbox ins isindex kbd li mark math nobr noinclude nowiki ol onlyinclude poem p pre q rb rbc ref references rp rt rtc ruby s samp score script section small source span strike strong style sub sup syntaxhighlight templatedata timeline table td th tr tt u ul var wbr

Hilfe zu den im Wikitext gängigen Tags lässt sich auch fast immer erreichen, indem in das Suchfeld eingegeben wird: h:name    

Syntax[Bearbeiten]

Die Syntax entspricht derjenigen von XML und HTML; zwischen beiden Sprachen gibt es minimale Unterschiede.

Ein Tag hat im einfachsten Fall die Form <name> – nach der öffnenden spitzen Klammer < steht der Bezeichner. Er soll kleingeschrieben werden, wird aber auch mit Großbuchstaben verstanden. Die schließende spitze Klammer > beendet das Tag.

Grundsätzlich gibt es mehrere Fälle:

  • Anfang und Ende:
    Ein Textabschnitt wird von zwei Tags eingeschlossen, die den gleichen Bezeichner tragen. Das abschließende Tag führt zu Beginn einen Schrägstrich:
    <name>………</name>
    • Dem eingeschlossenen Bereich sollen dadurch bestimmte Eigenschaften zugewiesen werden.
    • Die gesamte Einheit aus Anfang, Ende und Inhalt nennt man Element.
    • Elemente können ineinander verschachtelt sein; allerdings muss ein inneres Element dann vollständig in einem äußeren Element enthalten sein.
  • unary tag wie <references /> (alleinstehend):
    • Sie haben keinen Inhalt; können aber steuernd wirken.
    • In Texten, die auch gelegentlich von Menschen gelesen werden (wie das regelmäßig bei Wikitexten der Fall ist), schreibt man zur besseren Erkennung durch Menschen ein Leerzeichen vor den Schrägstrich.
  • Leeres Element (etwa <div></div>).
    • Bei den Wiki-Extensionen kann dies immer durch das kürzere und schneller erfassbare unary tag ersetzt werden, wie das auch in XML vorgesehen ist.
    • In HTML wird teilweise immer noch eine Unterscheidung getroffen zwischen Tags, die nie Inhalt enthalten können, und solchen, die prinzipiell Inhalt enthalten könnten, nur jetzt gerade leer sind. Im ersten Fall muss ein unary tag verwendet werden, im zweiten Fall darf kein unary tag benutzt werden. Dies kann insbesondere bei leerem <div> zu Schwierigkeiten führen. Wikitext wird jedoch von HTML-Tidy nachbearbeitet; damit werden in der Regel diese Syntaxprobleme ausgeglichen.
  • Vorlagenprogrammierung:
    • Hier können Tags mittels der Funktion #tag: der normalen Verarbeitung zunächst entzogen werden.

Attribute[Bearbeiten]

Weiterhin gilt:

  • Innerhalb von Tags sind Attributzuweisungen möglich. Dies gilt allerdings nur für das erste Tag (öffnend oder alleinstehend).
  • Sie haben das Format     attribut="Wert usw."
  • Attributwerte sollen in " (ASCII-Zeichen, Code 3410) eingeschlossen werden (möglich, aber nicht üblich wären auch Apostroph ' als ASCII-Zeichen, Code 3910). Besteht der Attributwert nur aus einer Zahl oder einem einzelnen Wort, wird das notfalls auch ohne Begrenzer verstanden.
  • Die Namen von Attributen sollen kleingeschrieben werden.
  • Innerhalb der Tags dürfen außer dem Namen des Tags und der Attributzuweisungen keine anderen Inhalte stehen.
  • Zeilenumbrüche zwischen Attributzuweisungen sind zulässig, um lange Tags mit vielen Attributen übersichtlicher zu gestalten; jedoch keine Leerzeilen.
  • Das Zeichen < (wie auch >) darf nicht vorkommen.
  • Attribute dürfen sich in einem Tag nicht wiederholen.
  • Das Attribut-Format wird nicht nur innerhalb von Tags benutzt, sondern etwa auch bei Tabellen, wo die Attribute dann in die generierten HTML-Elemente eingefügt werden.
  • Einige wenige Attribute sind alleinstehend; es wird ihnen kein Wert zugewiesen und sie lösen durch ihre Anwesenheit einen Effekt aus. Das ist im Wikitext jedoch sehr selten.[1]

Einige häufige Standard-Attribute sind

  • class=
  • id=
  • style=
  • lang=

Ob sie im konkreten Einzelfall auch wirksam sind, hängt vom Tag ab.

class[Bearbeiten]

Die Klassen sind insbesondere wichtig für die Zuordnung von CSS, wie es projektweit etwa in MediaWiki:Common.css projektweit definiert ist und auch individuell vereinbart werden kann (Hilfe:CSS).

Achtung: Falls mehrere Klassen angegeben werden, müssen sie durch Leerzeichen voneinander getrennt werden; nicht mit Komma:

class="wikitable float-right"

Eine projektweit definierte Klasse ist error, mittels der auf allen Seiten Fehlermeldungen (etwa von Vorlagen) aufgefunden und einheitlich formatiert werden können.

id[Bearbeiten]

Damit lassen sich Fragmente bilden, mit denen sich die Tags direkt verlinken lassen.

Für den Identifizierer gibt es Regeln:

  • Identifizierer müssen mit einem Buchstaben beginnen und dürfen kein # enthalten.
  • Sie sollten zur besseren Lesbarkeit in allen Situationen nur aus bestimmten ASCII-Zeichen gebildet werden, nämlich:
    A-Z a-z 0-9 . - / ( ) , ;
  • Identifizierer dürfen sich auf einer Seite nie wiederholen.
  • Sie sollten möglichst kurz und inhaltlich prägnant sein (Schlagwort), und von Menschen zweifelsfrei interpretiert und unterschieden werden („sprechend“).

style[Bearbeiten]

Während mit class= CSS-Formatierungen für alle Elemente gleichzeitig zugewiesen werden, lässt sich mit style= ein einzelnes Element in einem bestimmten Stil darstellen. Dies erfolgt regelmäßig nur in der Vorlagenprogrammierung und kann in Artikeln ausnahmsweise benutzt werden; siehe Hilfe:CSS.

lang[Bearbeiten]

In der Vorlagenprogrammierung wird gelegentlich das Attribut lang= benutzt. Als Wert ist syntaktisch ein Sprachcode gemäß ISO 639 anzugeben; auch sinngemäße Wiki-Erweiterungen sind möglich.

Es wird dem Element ein menschliche Sprache zugewiesen. lang="fr" kennzeichnet als französisch, lang="de-AT" als österreichisch.

Das kann durch Screenreader oder zur Auwahl besonders geeigneter Schriftarten[2] ausgenutzt werden.

Die Zuweisung wird in Artikeln nicht direkt verwendet, sondern über Vorlage:lang und andere.

Veraltete Attribute[Bearbeiten]

Die nachstehenden Attribute sind nicht mehr zeitgemäß und sollten im Rahmen von Überarbeitungen durch Zuweisungen im style= oder eine Klassenangabe ersetzt werden:

align= bgcolor= border= clear= height= valign=

Dadurch kommt es auch zu einer einheitlichen Nutzung von CSS statt unterschiedlicher historischer Sonderregelungen, die auf Dauer verwirren. In den meisten Fällen gehört auch width= dazu. Siehe Hilfe:CSS.

HTML-Tidy[Bearbeiten]

  • Von der Wiki-Verarbeitung nicht abgefangene und selbst verarbeitete Tags bleiben im Text stehen. Zurzeit ist dafür auch die Aufnahme in eine Positivliste erforderlich; siehe Verbotenes HTML.
  • Sie werden somit zum Ausgabe-Dokument weitergereicht, und es sollte sich um gültige HTML-Syntax handeln.
  • Die Elemente der Wiki-Syntax (Links, Apostroph usw.) werden ggf. ebenfalls in HTML umgewandelt.
  • Bevor dies zum Leser ausgeliefert wird, läuft das Programm HTML Tidy und versucht, das entstandene Gemenge zu interpretieren und als standardkonformes HTML zu formatieren.

Wiki-Erweiterung[Bearbeiten]

In der deutschsprachigen Wikipedia sind neben der Basis-Wikisyntax die folgenden nur in Wikis gültigen Tag-Bezeichner definiert:

charinsert[Bearbeiten]

Dieses Element ist ausschließlich dafür vorgesehen, Verlinkungen zum Einfügen von Text-Elementen in das Bearbeitungsfeld zu programmieren. Der eingeschlossene Bereich wird umgewandelt in ein Link, das die wikibits-Funktion insertTags() aufruft. Derartige Links sind mit sonstiger Wikisyntax nicht möglich.

hiddentext[Bearbeiten]

Aus der Frühzeit der Wikisyntax stammte dieses Format für Kommentare.

2011 war es noch funktionsfähig gewesen; seit 2012 wird es von der Parser-Software nicht mehr erkannt. Alle wirksamen Vorkommen sind aus allen Artikeln und allen gültigen Seiten entfernt worden.

nowiki[Bearbeiten]

Im von <nowiki>……</nowiki> umschlossenen Bereich hat die Wiki-Syntax keine Wirkung.

  • Alternativ kann man auch Entities verwenden, wenn nur wenige Zeichen maskiert werden sollen. Das ist in einem normalen Quelltext jedoch weniger gut lesbar und wäre eher etwas für die Vorlagenprogrammierung.

Mit <nowiki /> als unary tag wird die Wiki-Verarbeitung unterbrochen; das wird bei Zusammensetzungen mit Wikilinks benutzt, wenn das anschließende Wort nicht als Linktitel dargestellt werden soll: Mondlandung über [[Mond]]<nowiki />landung.

Die Entities &...; sind keine Wiki-Syntax, wirken nur auf Zeichen-Ebene und werden durch nowiki nicht beeinflusst. Eine Quellcode-Wiedergabe, bei der auch Entities wie angegeben sichtbar bleiben, kann mit <syntaxhighlight lang="text"> erreicht werden.

Soll nowiki zwar im Prinzip Verlinkungen und andere Syntaxelemente unwirksam machen, jedoch Variablen (und Vorlagen) auswerten, lässt es sich für die Vorlagenprogrammierung und interne Dokumentationen mittels der Funktion #tag: darstellen:

{{#tag:nowiki| ... {{PAGENAME}} ... }}

Basis-Syntax[Bearbeiten]

In jedem Projekt werden folgende eingebaute Elemente interpretiert:

hiddentext includeonly noinclude nowiki onlyinclude

Zusätzlich kann jedes Projekt individuell optionale Software-Komponenten zusammenstellen, die Extensionen („Erweiterungen“); siehe Spezial:Version.

Sinnvolles HTML für Artikel und Seitentexte[Bearbeiten]

Uneingeschränkt auf allen Seiten sinnvoll ist nur ein kleiner Teil an Elementen aus der allgemeinen Hypertext Markup Language:

Im laufenden Artikeltext sind ungewöhnliche Formatierungskonstrukte für die anderen Autoren unverständlich und störend; hier sollten sie in allgemein verwendbare Vorlagen mit einem sprechenden Namen eingebettet werden. Autoren allgemeiner Artikel sollen im Fließtext nicht mit kryptischen Syntaxbasteleien konfrontiert werden.

Bei Tabellen und schematischen Darstellungen im Artikel kann der Einsatz von Farben und besonderer Formate über die Standard-Elemente hinaus erforderlich und sinnvoll sein.

In fremdsprachlichen Textabschnitten (insbesondere in asiatischen Schriften) wäre auch die Ruby-Notation und weitere Schrift-Information vorstellbar mit den Elementen

bdi ruby rb rp rt

– dazu würden auch die zurzeit von der Software nicht unterstützten rbc und rtc gehören.

Auf einer Positivliste vermerkte HTML-Elemente werden von der Wiki-Software in den Ausgabetext durchgereicht. Bei unbekannten Elementen werden auch die Tags dargestellt und unwirksam; Gleiches gilt für alle ausdrücklich verbotenen Elemente. Damit können zwar die meisten HTML-Elemente benutzt werden; es sind aber nicht alle HTML-Elemente im Wikitext wünschenswert und sinnvoll.

Kommentar[Bearbeiten]

  • Ein Kommentar beginnt mit dem Code <!-- und endet mit --> (auch über Leerzeilen hinweg).
  • Der Kommentar erscheint nicht auf der dargestellten Seite; er wird auch nicht als Kommentar in die generierte HTML-Seite eingebettet.
  • Andere Tags sollten innerhalb von Kommentaren nicht auftreten, auch nicht -- als Zeichenkette und die Zeichen < > möglichst auch nicht.
  • Als Kommentare sind vorgesehen:
    • Technische Hinweise für Bots, Skripte und Autoren, etwa
    • Technische Hinweise für andere Autoren; etwa auf Formatvorlagen oder Parameterwerte, Einbindung dieser Seite durch andere Seiten, Aktualisierung durch Bots.
    • Kleine Hinweise für andere Autoren zur Formatierung; mögliche Verwechslungen oder kleine Schreib- und Formatfehler im Original; technische Details zu Quellenangaben und Verlinkungen oder sonstige Tücken; Warnung vor unerwünschten Aufblähungen.
  • Allgemeine inhaltliche Hinweise gehören auf die Diskussionsseite zum Artikel oder für alle Leser sichtbar im Text vermerkt.

br[Bearbeiten]

  • Das Element <br /> generiert innerhalb eines Textblocks einen Zeilenumbruch in der dargestellten Seite.
  • Am Ende von Textblöcken ist <br /> unwirksam und deshalb überflüssig. Das können beispielsweise sein: Ein Absatz, eine Aufzählungsposition, Tabellenzellen oder Bildlegenden.
  • Zur Typografie gilt:
    • Im Fließtext von Artikeln ist ein Abbruch des Leseflusses unerwünscht. Entweder beginnt man einen neuen Gedanken und macht dazu einen neuen Absatz (durch Leerzeile/n) oder man setzt den Gedankengang in derselben Zeile fort.
    • Sinnvoll sind Zeilenumbrüche dort, wo auf begrenztem Raum eine optische Gliederung erfolgen soll: Tabellenzellen und Bildlegenden; auch die inhaltliche Gliederung einer einzelnen Aufzählungsposition (Listenpunkt) ohne Beginn einer weiteren Nummerierung oder eines zusätzlichen Aufzählungszeichens.
    • Zwei aufeinanderfolgende Zeilenumbrüche sind in der Regel nicht sinnvoll; hier ist ein Absatz zu machen.
  • In HTML 4 war die Schreibweise <BR> gewesen. Das funktioniert auch. Es handelt sich zwingend um ein unary tag; <br></br> sind zwei Zeilenumbrüche und kein leeres Element.

code[Bearbeiten]

Mittels <code>……</code> werden im laufenden Text Bereiche in Schreibmaschinenschrift dargestellt. Damit sind Buchstaben deutlich unterscheidbar; etwa i I l 1 | können nicht verwechselt werden. Das ist für Computercode interessant.

  • Wikisyntax wird innerhalb des Bereichs ersetzt.
  • Wenn ein ganzer Textblock in Artikeln dargestellt werden soll, empfiehlt sich der Einschluss mittels <syntaxhighlight lang="text"> (oder spezifischere Formate).
    • Bevor diese Möglichkeit vorhanden war, hatte man <code> für solche Zwecke verwendet.
    • Zurzeit wird der code-Bereich auf weißem Hintergrund dargestellt. Das ist normalerweise nicht zu bemerken und wird wohl eines Tages entfallen; geht auch noch auf frühere Einsatzzwecke zurück.
  • Wenn der Zeilenumbruch in einer kurzen Code-Sequenz vemieden werden soll, lässt sich schreiben:
    <code style="white-space: nowrap">……</code>
    Längere Sequenzen gehören in einen eigenen Block.
  • <code> ist Nachfolger des veraltenden <tt>.

div[Bearbeiten]

Mittels <div> wird ein Element auf der Textblock-Ebene definiert. Ein Textblock beginnt im Regelfall in einer neuen Zeile; ansonsten gehören auch Tabellenzellen und Bildlegenden dazu.

In Artikeln ist außerhalb von schematischen Darstellungen nur eine einzige Verwendung erforderlich:

  • <div style="clear: both;" />   oder
  • <div style="clear: both;"></div>

Damit wird bewirkt, dass nach Einbindung von Bildern oder Tabellen das Seitenlayout wieder über die volle Breite reicht; erforderlichenfalls wird ein Leerraum bis unter das unterste vorangegangene Bild eingefügt.

Die erste Form funktioniert in der Regel; die zweite Form ist ein vollkompatibles leeres Element für HTML 4/5. Normalerweise wird dies automatisch durch HTML-Tidy geeignet strukturiert. Es wird auch durch die Vorlage {{Absatz}} eingefügt.[3]

Nicht zulässige und nicht von allen Browsern verstandene Formen sind

  • <br style="clear: both;" />
    • br ist kein Element auf Textblock-Ebene, wie es für das Seitenlayout erforderlich wäre.
  • <div style="clear: all;" />
    • Das Schlüsselwort lautet both.
  • <div clear="all" />
    • clear ist kein standardisierter Attribut-Name.

Daneben wäre statt both auch noch left und right als Schlüsselwort vorstellbar; dies ist aber für die Gestaltung normaler Wiki-Seiten irrelevant.

In der Vorlagenprogrammierung werden <div>-Elemente benutzt, um Textblöcken Klassen und Stile zuzuweisen; das mag auch zu grafischen Darstellungen in Artikeln eingesetzt werden.

small[Bearbeiten]

  • Der Text wird eine Stufe kleiner geschrieben. Damit sollte man es im normalen Text bewenden lassen, nur im Formelsatz mittels <math> können weitere Verkleinerungen sinnvoll sein.
  • Oft ist eine kleinere Schrift typografisch aber überhaupt nicht sinnvoll; es könnte genausogut in normaler Schriftgröße geschrieben und dafür in Klammern gesetzt werden.
  • Innerhalb bereits kleiner geschriebener Bereiche ist eine weitere Verkleinerung teils technisch unwirksam (weil je nach Skin nicht relativ zur Umgebung gerechnet wird), teils führt dies dazu, dass Leser mit Augenproblemen den Text nicht mehr lesen können oder Endgeräte die Zeichen nicht mehr unterscheidbar darstellen. Innerhalb von sub und sup, Bildlegenden, ref soll small nicht benutzt werden.

sub sup[Bearbeiten]

Die Elemente sub und sup bewirken die Tief- und Hochstellung des eingeschlossenen Textes. Dieser wird gleichzeitig kleiner geschrieben. Dabei soll kein zusätzliches <small> benutzt werden; auch sollen keine anderen sub oder sup enthalten sein. Für solche Fälle (Formelsatz) gibt es <math>.

Zur Typografie und Zeichenkodierung gilt:

  • Die Exponenten für Quadrat und Kubik bei Einheiten (etwa m² und m³) werden nicht mit sup geschrieben, sondern mit den einzelnen Zeichen ² und ³ (PC-Tastatur: AltGr+3); ANSI 17810 und 17910, auch erreichbar über die Eingabehilfen unter dem Bearbeitungsfeld.
  • Alle anderen Exponenten werden mit sup geschrieben, auch wenn es dafür Unicode-Definitionen gibt. Diese werden jedoch nicht bei allen Lesern dargestellt.
  • Treten in einer Textpassage Quadrate und andere Exponenten gleichzeitig auf, sind alle Exponenten einheitlich mit sup zu formatieren, weil die grafische Darstellung meist etwas abweicht.
  • In der musikalischen Notation werden alle hochgestellten Ziffern einheitlich mit sup geschrieben.
  • Die tiefgestellten Indizes werden immer mit sub geschrieben, auch wenn es dafür einige Unicode-Werte gibt. Diese werden jedoch nicht bei allen Lesern dargestellt.

Beispiel: T<sub>A</sub><sup>−1</sup> wird zu TA−1.

tt[Bearbeiten]

Das HTML-Element <tt>……</tt> bewirkte die Darstellung in Schreibmaschinenschrift.

  • Die Wirkung entspricht grundsätzlich der von <code>.
    • In der deutschsprachigen Wikipedia kann es noch leichte Unterschiede geben betreffend Hintergrundfarbe (transparent) und Schriftgröße; auch abhängig vom Kontext und Skin.

<tt> ist eine veraltete und langfristig nicht mehr unterstützte Notation in HTML. Weil sie jedoch sehr leicht zu tippen ist, wird dies aber noch häufig in Wikitexten anzutreffen sein.

Auf Wikisource wird <tt>……</tt> abweichend vom HTML-Standard zur Darstellung in Antiqua-Schriften benutzt.

HTML außerhalb der Artikel[Bearbeiten]

Für die Vorlagenprogrammierung, bei Funktionsseiten vor allem zu technischen Angelegenheiten und in Diskussionen oder auf Benutzerseiten kommen weitere Elemente in Frage:

Innerhalb von Artikeltexten sind sie nur im Ausnahmefall einzusetzen.

span[Bearbeiten]

<span> ist ein Universal-Element für beliebige Textformatierungen. Alle anderen Formatierungselemente auf Zeichen-Ebene ließen sich im Prinzip durch span ersetzen. Im Unterschied zu <div> wirkt es inline, das heißt innerhalb eines Textblocks (Absatzes) und ordnet insbesondere die Attribute class, id, style einem Textstück zu.

Im Regelfall werden die dadurch entstehenden, zuweilen komplizierten Gebilde nur innerhalb der Vorlagenprogrammierung und auf Funktionsseiten zu technischen Angelegenheiten verwendet.

pre[Bearbeiten]

Mit <pre> wird ein Block an kodierter Information dargestellt, das heißt in Schreibmaschinenschrift und mit dem vorgefundenen Zeilenumbruch des Quelltextes.

  • Als Wikisyntax wären auf normalen Seiten Zeilen mit einem Leerzeichen als erstes Zeichen jeder Zeile zu verwenden.
    • Im Unterschied dazu wird aber innerhalb von <pre>……</pre> die meiste Wikisyntax nicht interpretiert; es ist also gleichsam eine Kombination mit <nowiki>.
  • Im Prinzip handelt es sich um eine Wiki-Erweiterung, die einem gleichbenannten HTML-Element überlagert ist.
  • Eine Alternative wäre <syntaxhighlight> – ggf. mit lang="text" universell.

abbr acronym[Bearbeiten]

Mit <abbr> (und <acronym>) lassen sich Abkürzungen als solche kennzeichnen. Die semantisch feine Unterscheidung zwischen beiden Elementen hat sich kaum durchgesetzt.

  • In der HTML-Welt hat <acronym> keine Zukunft. Die Ausdifferenzierung (Abkürzung, Akronym, Apronym, Initialwort, Silbenkurzwort; expandiert, in Worten gesprochen oder buchstabiert [Screenreader]) soll zukünftig über anwenderspezifisches class= nur noch mittels <abbr> erfolgen.[4]

Mediawiki hat zurzeit acronym nicht auf der Positivliste.

Neben Verlinkungen und Bildern sind das die einzigen grafischen Elemente, die einen Tooltip anzeigen, wenn man mit dem Mauszeiger darüber fährt; dies sollte die Erläuterung zur Abkürzung sein.

In Artikeln wird dieses Element nicht verwendet; Wikilinks auf die Langform zu einer Abkürzung haben hinsichtlich des Tooltips den gleichen Effekt.

In der MW-Software gibt es die analoge class="explain" und ermöglicht individuelle Erklärungen. Sie arbeitet mit der CSS-Deklaration cursor:help – diese ist ab CSS2 (1998) verfügbar, unterstreicht den Bereich üblicherweise mit einer gestrichelten Linie und zeigt meist ein Fragezeichen, wenn der Cursor dort steht.

Redaktionelle Markierungen[Bearbeiten]

s strike[Bearbeiten]

Mit diesen Tags wird der dazwischen liegende Text durchgestrichen.

Mit HTML5 ist <strike> nicht mehr standardkonform; <s> hat seine Semantik leicht gewandelt, was für Wiki-Anwendungen irrelevant ist.

del ins[Bearbeiten]

Diese Elemente gehen über die reine Textformatierung hinaus; hier sollen auch Angaben zum Autor (Verlinkung) und Zeitpunkt gemacht werden und es soll eine optische Zuordnung (Farben) zu den einzelnen Veränderungsphasen oder Autoren sichtbar werden. <del> wird meist durchgestrichen dargestellt.

Das mag in einem Artikel zur Entstehung von Gedichten, Gesetzestexten usw. einmal sinnvoll sein, wäre ansonsten allenfalls bei der Erarbeitung Wiki-interner Texte einzusetzen.

mark[Bearbeiten]

Die Kennzeichnung <mark> (Textmarker-Funktion) ist eher gedacht zur dynamischen Einfügung in die fertige HTML-Seite, als dass es im Quelltext des Wikis dauerhaft vorhanden sein sollte (hierfür wäre <span> zu verwenden).

Mit <mark> kennzeichnet man in einem statischen Text vorübergehend den Bezug zu wechselnden Anmerkungen oder Belegen, oder man markiert das Vorkommen von aktuellen Suchbegriffen. Die konkrete Farbe wird dynamisch vom Browser so festgelegt, dass sie mit den im markierten Bereich vorhandenen Schrift- und Hintergrundfarben kontrastiert.

Die MediaWiki-Installation übersteuert allerdings im Moment dieses Verhalten und gibt explizit vor: Schwarze Schrift auf gelbem Hintergrund, weil älteren Browsern das neue HTML-5-Element unbekannt ist und wirkungslos bleiben würde.

Unerwünschtes HTML[Bearbeiten]

Es sind über 110 verschiedene Element-Namen in HTML bekannt. Sie tragen teils kontextabhängige semantische Feinheiten, teils sind sie veraltet. Wiki-Autoren sollen sich damit nicht auseinandersetzen müssen.

Wikisyntax[Bearbeiten]

Wo die Wikisyntax selbst Möglichkeiten bietet, sollen keine HTML-Elemente eingebracht werden.

Element Bedeutung Ersatz durch Wikisyntax
b strong Hervorhebung; Fettschrift Drei Apostrophzeichen '''
i em Hervorhebung; Kursivschrift Zwei Apostrophzeichen ''
p Absatz Leerzeile
<hr /> Trennlinie Vier Bindestriche ----
Im Artikel-Layout unerwünscht
ol ul li Aufzählung Stern * und Hashcode #
dl dt dd Definitionsliste Semikolon ; und Doppelpunkt :
h1 h2 h3 h4 h5 h6 Überschrift Gleichheitszeichen =
table td th tr thead caption tbody col colgroup tfoot Tabellensyntax Tabellensyntax

Gelegentlich werden temporär auf internen Funktionsseiten wie etwa Wartungslisten die Ergebnisse externer Software eingetragen, die laufend aktualisiert werden. Sie sind ggf. nicht in Wikisyntax, sondern mittels HTML formatiert, und dort ist das auch nicht zu beanstanden.

Formatierung[Bearbeiten]

Diese Tags sollen in Artikeln und Projektseiten nicht verwendet werden. Nur im Rahmen der Vorlagenprogrammierung wird ggf. von den semantischen Eigenschaften der ersten drei Tags Gebrauch gemacht.

Element Bedeutung Ersatz
<blockquote> Blockzitat Vorlage {{Zitat}} oder fremdsprachliche Varianten
<q> eingebettetes Zitat Vorlage {{"}}
<cite> Titel eines Werks Kursivschrift
<u> Unterstreichung Kursivschrift
Verwechslung mit Verlinkung; Irritation der Leser

Ungebräuchliches HTML[Bearbeiten]

Gelegentlich wird noch gefunden oder thematisiert:

Element Bedeutung Ersatz
big Große Schrift style="font-size:larger;"
center Zentrierung class="centered"
style="text-align:center;"
font Schrifteigenschaften style="…"
dfn, kbd, samp, var Software-Dokumentation <code>
nobr Kein Zeilenumbruch
(Nicht standardisiert)
style="white-space:nowrap;"
<wbr /> Worttrennung möglich (ohne Trennstrich)
(Seit HTML5 standardisiert)
Im Fließtext unerwünscht
&shy; (mit Trennstrich)
Im Fließtext unerwünscht

Es gibt noch etliche weitere Tags in HTML; diese waren aber bislang in Wikitexten nicht in Erscheinung getreten.

big[Bearbeiten]

Dieses Element soll nicht verwendet werden.

  • Zeichen aus außereuropäischen Schriften sind in die entsprechenden Vorlagen der Kategorie:Vorlage:Fremdsprachenunterstützung einzubetten, die auch andere Eigenschaften projektweit geeignet zuordnen.
  • Für Überschriften ist Wikisyntax zu benutzen.
  • Zwischenüberschriften etwa in Infoboxen sind bei der Vorlagenprogrammierung über <span> zu realisieren.

Mit HTML5 ist <big> auch nicht mehr standardkonform.

center[Bearbeiten]

Mittels <center> wurde ein Element innerhalb eines Blocks (horizontal) mittig ausgerichtet.

Es wird nicht gern gesehen, Artikel nach individuellem Geschmack umzugestalten; Bildlegenden usw. folgen einem einheitlichen Layout.

Wo wirklich erforderlich, kann mit dem Attribut class="centered" ein ganzer Block zentriert werden; außerdem mit style="text-align:center" fast jedes Tag zur mittigen Ausrichtung seines Inhalts gebracht werden.

Mit HTML5 ist <center> nicht mehr standardkonform; es sollte nicht mehr neu eingefügt und allmählich aus der Wikipedia entfernt werden. Notfalls kann es durch die genannte class oder style ersetzt werden.

font[Bearbeiten]

Dieses Element spezifizierte Einzelheiten zur Schriftart, Schriftgröße oder andere Darstellungsformen. Das wird seit langem über das allgemeinere <span style=""> realisiert.

Mit HTML5 ist <font> nicht mehr standardkonform, war schon 1998 obsolet und sollte unbedingt aus allen Wikiseiten entfernt werden.

Im Übrigen sind die Wiki-Seiten schlicht gehalten und verwenden nicht lauter verschiedene fein abgestufte Schriftgrößen. Für außereuropäische Schriften werden dem Browser Hinweise zu geeigneten Zeichensätzen über entsprechende Vorlagen gegeben.

HTML 2[Bearbeiten]

dfn kbd samp var

In HTML 2 gemäß RFC 1866 von 1995 gab es noch kein CSS und keine style-Vereinbarungen. Deshalb musste jedes unterschiedliche Markup damals ein gesondertes Element erhalten.

Seinerzeit sah man als wesentliches Einsatzgebiet die Erstellung technisch-wissenschaftlicher Dokumente; insbesondere auch automatisch generierte Software-Dokumentation, die durch spezielle Tags unterstützt werden sollte. Aus diesem Kontext stammen die dfn kbd samp var – heute benutzt man dafür Klassen und CSS-Stile.

Als Darstellung für kbd und samp war Schreibmaschinenschrift vorgesehen; var und dfn werden meist kursiv dargestellt.

Für Tastatur-Eingaben einzelner Zeichen verwenden wir nicht direkt <kbd> sondern {{Taste}}; bei allen anderen Anwendungen steht <code> oder <syntaxhighlight> zur Verfügung. Kursivschrift wird durch Apostrophe erreicht.

Verbotenes HTML[Bearbeiten]

Aus Sicherheitsgründen sind eine Reihe von HTML-Anweisungen ausschließlich über Wikisyntax möglich. Sie werden dabei auf böswillige Techniken überprüft. Es handelt sich um Verlinkungen und die Ausführung von fremder Software. Wenn externe Ressourcen (Bilder, Multimedia, fremde Texte und Webseiten) direkt als Inhalte eingebunden würden, könnte es außerdem zu Urheberrechtsverletzungen kommen.

Alle direkten Verwendungen solcher Tags werden vom „Sanitizer“ auf dem Wiki-Server ausgefiltert.[5]

Betroffen sind („blacklist“):

a applet area audio base body button canvas command embed form frame frameset head html iframe img input isindex layer link map meta object option param script select (source) style textarea title track video xml

Übrigens wird auch das URL-Format bei Bildparametern im style-Attribut entfernt.

Die derzeitige Strategie ist, auch alle nicht explizit als geeignet bekannten HTML-Elemente auszufiltern. Alternativ würden im Wikitext vorgefundene unverstandene Elemente in den Ausgabetext durchgereicht, sofern sie nicht explizit verboten wären; durch die Vielzahl an Browser-Entwicklungen und neu definierter Tags ist das aber nicht mehr sicher genug.

Damit ist auch Pseudo-HTML wie <Scherz> unmittelbar möglich; zurzeit wird das < nur umgesetzt, wenn darauf ein erkanntes Tag von der Positivliste folgt. Das Escapen des < etwa als &lt; ist zurzeit nicht zwingend erforderlich; es kann aber auch nicht schaden, falls der Wikitext einmal anders interpretiert wird. Das schließende > braucht in diesen Fällen grundsätzlich nicht maskiert werden.

Nicht unterstützt[Bearbeiten]

Zu den sicherheitstechnisch unschädlichen und prinzipiell vorstellbaren, aber zurzeit nicht gelisteten Elementen gehören:

acronym address fieldset label noscript rbc rtc

Sie sind weltweit wegen unnötiger Verkomplizierung des Wikitexts unerwünscht.[6] Die Software ignoriert diese genau wie verbotene Elemente.

Anhang: Entities[Bearbeiten]

Keine HTML-Tags, aber thematisch verwandt sind Zeichen-Entitäten: &...;

Hier gilt für die deutschsprachige Wikipedia, insbesondere den Artikelnamensraum:

  • Das einzige regulär zu verwendende entity ist das geschützte Leerzeichen; durch &nbsp; dargestellt.
    • Es sollte in Maßen eingesetzt werden. Möglichst nur dort, wo der Nutzen überwiegt; also wenn die durch einen Zeilenwechsel hervorgerufene Störung der Lesbarkeit der dargestellten Seite bei zusammengehörenden Begriffen, Angaben mit Einheiten gravierend ist.
      Beispiele: 120&nbsp;kg oder Wilhelm&nbsp;I.
      Grundregel ist, dass mindestens eines der verbundenen Textelemente ziemlich kurz sein muss; nur wenige Zeichen. Werden die fest verbundenen Bestandteile zu lang, entsteht eine hässliche Lücke am rechten Rand; deshalb wird es in der Regel nur um wenige Zeichen links oder rechts gehen.
    • Unnötiger und übermäßiger Einsatz des &nbsp; stört die Lesbarkeit des Quelltextes.
    • In den Zielen eines unbetitelten Wikilinks kann das &nbsp; benutzt werden; es wird intern bei der Bildung der HTML-Verlinkung aufgelöst.[7]
    • Es ist eine technische Erweiterung in Arbeit, die in vielen Standardfällen in der dargestellten Seite den Zeilenumbruch geeignet verhindern soll.
  • Gelegentlich müssen Zeichen der Wikisyntax in bestimmten Texten oder Syntaxcodes unwirksam gemacht werden; so ist &#93; eine Umgehung, wenn in einer URL keine Klammer ] vorkommen kann und %5D wegen möglichem Unverständnis auf Seiten älterer Webserver nicht sicher funktioniert.
    • Früher einmal gab es nicht standardisierte, praktisch Wiki-eigene Namen für Entitäten der Wikisyntax: &lsqb; &rsqb; &lcub; &rcub; für [ ] { } – dies wird seit längerer Zeit nicht mehr unterstützt.
    • Allgemein wird nur eine in HTML4 (=HTML5) gültige Definition in ein einzelnes Zeichen umgesetzt; ansonsten die Zeichenkette des Quelltextes angezeigt.
    • Der Name &apos; für den ASCII-Apostroph ' gehört zu XML/XHTML und wird verstanden.
  • &shy; für ein weiches Trennzeichen ist im Allgemeinen unerwünscht; es verhindert Suchvorgänge und irritiert im Quelltext; nur wenige Autoren sind damit vertraut.
    • Ausnahmsweise kann es angewendet werden, wenn bei begrenztem Raum (Bildlegende, Tabellenzelle) einzelne lange Wörter unangemessen über die Grenzen ragen.
  • Alle anderen Verwendungen sind außerhalb von Vorlagenprogrammierung und dergleichen unerwünscht.
    • Gelegentlich hat man keine andere Möglichkeit, besondere Zeichen über die Tastatur einzugeben. Hier kann man im Bearbeitungsfeld das Zeichen über die Nummer eingeben; anschließend die Vorschau anzeigen, prüfen ob es das richtige Zeichen geworden ist, und durch C&P im Wikitext ersetzen. Bei exotischen Zeichen ist jedoch immer abzuwägen, ob es auch bei allen Anwendern dargestellt werden kann; oder ob alternativ ein gebräuchlicheres Zeichen verwendet werden könnte. Will man einen arabischen Namen zusätzlich in der Originalsprache nennen, ist es in Ordnung, wenn die Zeichen bei einigen Benutzern nicht dargestellt werden können; wer arabisch lesen kann, wird auch geeignete Zeichensätze installiert haben.
    • Einige Benutzer, Skripte und Bots ersetzen gelegentliche Restvorkommen automatisiert.

Benannte Entities werden von der MW-Software[5] automatisch in numerische (dezimale) Entities umgesetzt, so dass der entstehende HTML-Text völlig unabhängig von unzulänglichen Browsern ausgeliefert wird.

Weiterführende Informationen[Bearbeiten]

Anmerkungen[Bearbeiten]

  1. <gallery showfilename> ist einer der wenigen Ausnahmefälle.
  2. Siehe etwa WP:CSS #lang und Hilfe:Schriftunterstützung.
  3. Der Name der Vorlage {{Absatz}} wurde sehr irreführend gewählt; tatsächlich müsste es heißen {{Seitenbreite}} oder {{Layout (volle Breite)}} oder ähnlich. Wobei {{vollbreit}} eher als inhaltlicher Kommentar missinterpretiert werden würde.
  4. bugzilla:671 #c37
  5. a b includes/Sanitizer.php – dies übernimmt auch unerwünschtes CSS sowie die Umwandlung benannter Entities und die Entfernung von Kommentaren.
  6. bugzilla:671
  7. Durch einen seit 2005 bestehenden Software-Fehler (bugzilla:2700) geschieht das nicht innerhalb von Tag-Extensionen, also etwa durch <ref> eingeschlossen.