Hilfe:Tabellen/Erweitert
Diese Hilfeseite stellt Tabellen-Syntax dar, die seltener in enzyklopädischen Artikeln benötigt wird. Die Grundlagen aus Hilfe:Tabellen werden durch zusätzliche Informationen erweitert.
Klassenbezeichner und Attribute
[Bearbeiten | Quelltext bearbeiten]Nachstehend ein Index von Klassenbezeichnern und Attributen, die speziell für Tabellen sinnvoll sind. Sie können den Elementen (Tabelle, Zeile, Zelle) geeignet zugeordnet werden.
Attribute
[Bearbeiten | Quelltext bearbeiten]Sie können je nach Zweck einer ganzen Tabelle oder einer ganzen Zeile oder einer einzelnen Zelle zugewiesen werden, um eine bestimmte Gestaltung oder Eigenschaft zu bewirken.
- Siehe allgemein: Attribute; außerdem: veraltete Attribute
- class=
- Klassenbezeichner zuweisen
- Beschreibung
- Herkunft: HTML
- colspan=
- Mehrere Spalten überspannen
- Beschreibung
- Herkunft: HTML
- data-sort-type=
- Datentyp der Sortierung einer Spalte
- Beschreibung
- Herkunft: MediaWiki
- data-sort-value=
- Sortierwert für eine Zelle
- Beschreibung
- Herkunft: MediaWiki
- id=
- Sprungziel setzen
- Beschreibung
- Herkunft: HTML
- rowspan=
- Mehrere Zeilen überspannen
- Beschreibung
- Herkunft: HTML
- scope=
- Überschriften-Richtung zuweisen (Spalte oder Zeile)
- Beschreibung
- Herkunft: HTML
- style=
- CSS zuweisen
- Beschreibung
- Herkunft: HTML
Klassenbezeichner
[Bearbeiten | Quelltext bearbeiten]Siehe allgemein: Selektoren-Index und speziell Wikipedia-Standardfarben.
- mw-collapsible
- Einklappbares Element
- Beschreibung
mw-collapsed
(abhängig)- Herkunft: MediaWiki
- mw-datatable
- Veraltet; jetzt
tabelle-zeile-aktiv
- prettytable
- Veraltet: Tabelle allgemein aufhübschen
- Beschreibung
- Herkunft: deWP
- sortable
- Tabelle soll sortierbar sein
- Beschreibung
- Herkunft: MediaWiki
- tabelle-kopf-fixiert
- Tabellenkopf beim Scrollen am oberen Rand fixieren
- Beschreibung
- Herkunft: Vorlage:Tabellenstile
- tabelle-zaehler
- Beschreibung
- Herkunft: Vorlage:Tabellenstile
- tabelle-zeile-aktiv
- Datenzeile am Mauszeiger hervorheben
- Beschreibung
- Herkunft: Vorlage:Tabellenstile
- toptextcells
- Alle Zellen-Inhalte nach oben ausrichten
- Beschreibung
- Herkunft: deWP
- unsortable
- Spalte nicht sortieren
- Beschreibung
- Herkunft: MediaWiki
- wikitable
- Tabelle allgemein aufhübschen; Kopfzeilen hervorheben, Rahmenlinien
- Beschreibung
- Herkunft: MediaWiki
- zebra
- Zeilen abwechselnd farbig hinterlegen
- Beschreibung
- Herkunft: deWP
Beispiele
[Bearbeiten | Quelltext bearbeiten]Beispiele zu den einigen Klassen
Kombinationen von Klassen
[Bearbeiten | Quelltext bearbeiten]Die genannten Klassen lassen sich teilweise kombinieren. Hierbei sollte Augenmaß gewahrt werden, nicht jede Eigenschaft ist immer passend. Sinnvolle Kombinationen wären:
- Sortierbare Wikitables:
class="wikitable sortable"
- Oben ausgerichtete Texte in Zellen mit Wikitable:
class="wikitable toptextcells"
- Kombinationen aller drei Stile:
class="wikitable toptextcells sortable"
Die Klassenbezeichner werden durch Leerzeichen getrennt aufgelistet (nicht mit Komma!).
Optische Gestaltung
[Bearbeiten | Quelltext bearbeiten]zebra – Zeilen abwechselnd farbig hinterlegen
[Bearbeiten | Quelltext bearbeiten]– nicht veränderbar[1]
class="zebra"
ist eine spezielle Eigenschaft der Tabelle class="wikitable"
, sie ist nur gemeinsam mit dieser Klasse wirksam.
Quelltext:
{| class="wikitable zebra"
- Die Zeilen einer Tabelle werden abwechselnd in reinem Weiß (
#FFFFFF
) hervorgehoben (diese Farbe ist so festgelegt und wirkt sich nur auf Inhaltszellen aus); bzw. werden im Dunkelmodus invertiert. - Die Hintergrundfarbe der anderen Zellen behält das Hellgrau der wikitable-Vorgabe. Dieser Effekt kann durch eine zusätzlich für die gesamte Tabelle definierte Hintergrundfarbe oder eine entsprechende style-Zuweisung verstärkt werden.
- Die Wechselfärbung kann bei verbundenen Zeilen unerwünschte Effekte hervorrufen; Beispiel.
- Bei Verwendung zusammen mit
rowspan=""
richtet sich die Farbe jeder Zelle nach der ersten Zeile, zu der die Zelle gehört.
- Bei Verwendung zusammen mit
- Das Einfärben einzelner Zellen ist weiterhin möglich.
- Eine Kombination mit der Sortierfunktion ist möglich, die abwechselnde Farbgebung wird nicht mitsortiert.
Trennlinien
[Bearbeiten | Quelltext bearbeiten]Zellenränder und Trennstriche
[Bearbeiten | Quelltext bearbeiten]Mit diesen Deklarationen können Trennstriche zwischen bestimmten Zellen realisiert oder ausgeblendet werden.
Horizontaler Trennstrich
[Bearbeiten | Quelltext bearbeiten]Dieser Tabelle wurde eine Schriftart für alle Zellen zugewiesen, hier font-family: monospace
, um eine feste Laufweite zu erreichen. Damit die Tabellenüberschrift davon ausgenommen wird, muss ihr eine andere Schriftart zugewiesen werden, hier font-family: sans-serif
. Die Stärke, Art, Farbe und Position des Trennstrichs könnte verändert werden. Der kleine Spalt zwischen den Zellen kann durch style="border-collapse:collapse;"
am Tabellenanfang vermieden werden.
|style="border-top: 1px solid #000000;"|
365 | 563 |
+ 123 | + 321 |
+ 235 | + 532 |
+ 277 | + 772 |
1000 | 2188 |
{| style="border-collapse:collapse;"
365 | 563 |
+ 123 | + 321 |
+ 235 | + 532 |
+ 277 | + 772 |
1000 | 2188 |
Quelltext dieser Tabelle:
{| style="text-align:right; font-family: monospace; width:10em;"
|+ style="font-family: sans-serif;"| Einfache Addition
|-
| 365 || 563
|-
| + 123 || + 321
|-
| + 235 || + 532
|-
| + 277 || + 772
|-
|style="border-top: 1px solid #000000;"| 1000
|style="border-top: 1px solid #000000;"| 2188
|}
Vertikaler Trennstrich
[Bearbeiten | Quelltext bearbeiten]Die hier etwas dickeren Trennstriche zwischen den Zellen werden mit der alternativen Angabe medium solid
realisiert:
medium
entspricht in etwa3px
, neben dieser Angabe wären auchthin
ca.1px
(wäre bei wikitable wirkungslos) oderthick
ca.5px
möglich.- Dem Strich kann eine Farbe gegeben werden.
|style="border-right: medium solid;"|
Links | Rechts |
left | right |
|style="border-right: 2px solid #DD0000;"|
Links | Rechts |
left | right |
Quelltext dieser Tabelle:
{| class="wikitable" style="text-align:center;"
|-
|style="border-right: medium solid;"| Links
| Rechts
|-
|style="border-right: medium solid;"| left
| right
|}
Einfache Tabelle
[Bearbeiten | Quelltext bearbeiten]Tabelle ohne Zellenränder, hier steht y
für den Wert der Rahmenstärke.
style="border: 1px solid #000000;"
Kopf 1 | Kopf 2 | Kopf 3 |
---|---|---|
Zelle 1 | Zelle 2 | Zelle 3 |
Zelle 4 | Zelle 5 | Zelle 6 |
style="border: 3px solid #ABCDEF;"
Kopf 1 | Kopf 2 | Kopf 3 |
---|---|---|
Zelle 1 | Zelle 2 | Zelle 3 |
Zelle 4 | Zelle 5 | Zelle 6 |
style="border: 5px solid #FEDCBA;"
Kopf 1 | Kopf 2 | Kopf 3 |
---|---|---|
Zelle 1 | Zelle 2 | Zelle 3 |
Zelle 4 | Zelle 5 | Zelle 6 |
Quelltext dieser Tabelle:
{| style="border: ypx solid #000000;"
|-
! Kopf 1
! Kopf 2
! Kopf 3
|-
| Zelle 1
| Zelle 2
| Zelle 3
|-
| Zelle 4
| Zelle 5
| Zelle 6
|}
Zellenabstände
[Bearbeiten | Quelltext bearbeiten]Um einen ähnlichen Effekt zu erreichen, wie er bei einfachen Tabellen mit den veralteten HTML-Attributen cellspacing
und cellpadding
erzeugt werden konnte, gibt es einige Möglichkeiten.
style="border-collapse: separate;"
– erzeugt einen Doppelrahmen, bei dem sich die inneren und äußeren Abstände beeinflussen lassen.style="border-spacing:…;"
– Abstand zwischen Zellenrand und Tabellenrand oder den benachbarten Zellen (erfordertstyle="border-collapse: separate;"
). Es können ein oder zwei Wertestyle="border-spacing: 2px 4px;"
übergeben werden.style="padding:…;"
–-top
-left
-bottom
-right
style="margin:…;"
–-top
-left
-bottom
-right
style="border-collapse: collapse;"
lässt zusammenfallende Zellumrandungen verschwinden. (Standard beiclass="wikitable"
)
Separate Ränder
[Bearbeiten | Quelltext bearbeiten]Gerahmte Tabelle mit getrennten Rändern.
style="border-collapse: separate;"
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Quelltext dieser Tabelle:
{| class="wikitable" style="border-collapse: separate;"
|-
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
border-spacing
[Bearbeiten | Quelltext bearbeiten]Das style="border-spacing:…;"
ändert die Abstände zwischen allen Rändern der Tabelle.
style="border-collapse: separate; border-spacing:…em;"
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Quelltext dieser Tabelle:
{| class="wikitable" style="border-collapse: separate; border-spacing: .5em;"
|-
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Unterschiedlicher Abstand horizontal, vertikal:
style="border-collapse: separate; border-spacing: …em …em;"
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Quelltext dieser Tabelle:
{| class="wikitable" style="border-collapse: separate; border-spacing: …em …em;"
|-
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Tabellenrahmenabstände
[Bearbeiten | Quelltext bearbeiten]Dem äußeren Rahmen der Tabelle (class="wikitable"
) kann separat ein größerer Abstand zu den Inhaltszellen übergeben werden.
style="padding:…;"
style="padding-top:…;"
style="padding-left:…;"
style="padding-bottom:…;"
style="padding-right:…;"
{| style="border-collapse: separate; padding: …em;"
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Der Abstand zwischen Rahmen und Inhalt beträgt 2em
Quelltext dieser Tabelle:
{| class="wikitable" style="border-collapse: separate; padding: 2em;"
|+ wikitable
|-
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Dem äußeren Rahmen der Tabelle (class="wikitable"
) kann separat ein größerer Abstand zu den sie umgebenden Seiteninhalten übergeben werden.
style="margin:…;"
– Attribute:style="margin-top:…;"
style="margin-left:…;"
style="margin-bottom:…;"
style="margin-right:…;"
{| style="border-collapse: separate; margin: …em;"
Alpha | Beta | Gamma |
Delta | Epsilon | Zeta |
Diese Tabelle ist rundum mit einem Abstand von 2em
versehen.
Quelltext dieser Tabelle:
{| class="wikitable" style="border-collapse: separate; margin: 2em;"
|+ wikitable
|-
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Texteinrückung
[Bearbeiten | Quelltext bearbeiten]– nicht veränderbar
Eine Texteinrückung, d. h. eine Darstellung, bei der der Text nicht am linken Rand beginnt (bei linksseitiger Ausrichtung) bzw. nicht am rechten Rand endet (bei rechtsseitiger Ausrichtung), sondern etwas eingerückt wird, kann über das cell padding („Zellen-Auspolsterung“)-Attribut erreicht werden:
style="padding-…;"
Linksbündig ohne Einrückung |
1 |
Linksbündig mit Einrückung |
2 |
Rechtsbündig ohne Einrückung |
3 |
Rechtsbündig mit Einrückung |
4 |
Quelltext dieser Tabelle:
{| class="wikitable"
|-
| Linksbündig<br /> ohne Einrückung || 1
|-
|style="padding-left:2em"| Linksbündig<br /> mit Einrückung || 2
|-
|style="text-align:right"| Rechtsbündig<br /> ohne Einrückung || 3
|-
|style="text-align:right; padding-right:2em"| Rechtsbündig<br /> mit Einrückung || 4
|}
Der gesamte Tabelleninhalt wird rechtsbündig, wenn man im Tabellenkopf {| style="text-align:right;"
angibt. Spaltenweise rechtsbündig oder sonst abweichend ist nicht möglich.
Ecken abrunden
[Bearbeiten | Quelltext bearbeiten]Es ist technisch möglich, den Rahmen einer Tabelle mit abgerundeten Ecken zu präsentieren. Dies ist allerdings für class="wikitable" nicht vorgesehen und sollte auch nicht in Artikeln eingesetzt werden.
Funktionelle Effekte
[Bearbeiten | Quelltext bearbeiten]Funktionelle Effekte sollen bei der interaktiven Benutzung dynamische Effekte auslösen, während zunächst die Darstellung ein statisches, unveränderliches Bild abgibt.
Datenzeile am Mauszeiger hervorheben
[Bearbeiten | Quelltext bearbeiten]– nicht veränderbar
class="tabelle-zeile-aktiv"
ist eine spezielle Eigenschaft der Tabelle class="wikitable"
, sie ist nur gemeinsam mit dieser Klasse wirksam. Damit die erforderlichen Stildefinitionen bereitstehen, muss die Vorlage:Tabellenstile auf der Seite eingebunden sein.
Quelltext:
{{Tabellenstile}}
{| class="wikitable tabelle-zeile-aktiv"
- Die Hintergrundfarbe der Inhaltszellen wechselt für die gesamte Zeile _, wenn man mit dem Mauszeiger über eine Zelle fährt („aktive“ Zelle bzw. Zeile).
- Die Lesbarkeit einer Tabelle mit vielen Daten kann dadurch eventuell verbessert werden.
Nachteil:
- Die Anwendung kann bei verbundenen Zellen unerwünschte Effekte hervorrufen; Beispiel.
- Die Inhaltszellen sollten nicht individuell eingefärbt werden, da der Effekt der blauen Hinterlegung beim Überfahren mit dem Mauszeiger verlorengeht.
Die bis März 2022 für den Hervorhebungseffekt zu verwendende Klasse mw-datatable
nutzte Stildefinitionen direkt aus dem Anwendungspaket von MediaWiki, was Mitte 2021 unterbunden wurde. mw-datatable
war nicht auf Mobilgeräten verfügbar und sorgte darüber hinaus auch für eine abweichende Formatierung der Tabelle (Rahmen, Hintergrundfarben), die zwecks Vereinheitlichung der Tabellenstile nicht in die neue Klasse tabelle-zeile-aktiv
übernommen wurde.
Tabellenkopf beim Scrollen am oberen Rand fixieren
[Bearbeiten | Quelltext bearbeiten]– nicht veränderbar
class="tabelle-kopf-fixiert"
ist eine spezielle Eigenschaft der Tabelle class="wikitable"
, sie ist nur gemeinsam mit dieser Klasse wirksam. Damit die erforderlichen Stildefinitionen bereitstehen, muss die Vorlage:Tabellenstile auf der Seite eingebunden sein.
Quelltext:
{{Tabellenstile}}
{| class="wikitable tabelle-kopf-fixiert"
Bei langen Tabellen kann der Tabellenkopf beim Scrollen am oberen Bildschirmrand fixiert werden, sodass er immer sichtbar bleibt. Dies funktioniert auch, wenn in der gleichen Tabelle mehrere Kopfzeilen vorhanden sind, jedoch wird immer nur die später definierte Kopfzeile angezeigt.
Rangliste (Nummerierung der Zeilen)
[Bearbeiten | Quelltext bearbeiten]Eine „automatische“ Nummerierung der Zeilen einer Tabelle, so wie es etwa bei einer nummerierten Liste mit dem Zeichen # geschieht, ist bei Tabellen ebenfalls möglich. Dies geschieht durch Einfügung einer zusätzlichen vorangestellten Spalte, die eine Zählung der Zeilen ermöglicht und die zugehörige Zeilennummer anzeigt. Die Syntax wird auf Hilfe:Tabellen/Zählung beschrieben.
Siehe ansonsten: Rangliste
Einklappbare Tabelle
[Bearbeiten | Quelltext bearbeiten]- Um diese Funktion nutzen zu können, muss JavaScript für die Wikipedia aktiviert sein (bei dir ist JavaScript momentan nicht aktiviert)
- Der Inhaltsbereich der Tabelle lässt sich ein- und ausklappen. Beachte: Wesentliche Inhalte des Artikels sollten nicht durch Einklappen verborgen werden, um die Zugänglichkeit der Inhalte nicht zu beeinträchtigen.
- Je nach Zustand der Tabelle wechselt die Beschriftung der Schaltfläche zwischen
[Einklappen]
und[Ausklappen]
- Durch den Zusatz
mw-collapsed
ist die Tabelle beim Laden des Artikels eingeklappt - Durch den Zusatz
mw-collapse
ist die Tabelle beim Laden des Artikels ausgeklappt, dies entspricht der Funktionclass="mw-collapsible"
ohne Zusatz - Bei existierender Tabellenüberschrift wird die Schaltfläche zum Umschalten rechts neben dieser sichtbar (und hat einen Abstand zum Text der Überschrift)
Zu beachten:
- Ohne Tabellenüberschrift sollte eine Kopfzelle (oder komplette Kopfzeile) vorhanden sein. Die Schaltfläche zum Umschalten erscheint dann rechts neben dem Text der letzten rechten Kopfzelle. Andernfalls wird die Schaltfläche zum Umschalten rechts neben dem Inhalt der Zelle am oberen rechten Rand eingeblendet und übernimmt die Eigenschaften dieser Zelle
- Beim Einklappen einer Tabelle mit Tabellenüberschrift reduziert sich die Breite der Tabelle auf die Breite der Überschrift und die Schaltfläche steht darunter. Derart eingeklappte Tabellen sind schlecht vom Fließtext zu unterscheiden. Der Leser nimmt sie eventuell nicht wahr
- Bei Tabellen ohne Tabellenüberschrift steht die Schaltfläche ohne Abstand unmittelbar am Zelleninhalt
- Anker (sowie Belegmarken von Einzelnachweisen), die sich im eingeklappten Inhaltsbereich befinden, können nicht angesprungen werden
- Über Eigenschaften das Menü „Tabelleneigenschaften“ öffnen.
- Dort „Einklappbar“ → eingeschaltet.
- Dort „Zunächst eingeklappt“ → ein- oder ausgeschaltet.
Sortierbare Tabelle
[Bearbeiten | Quelltext bearbeiten]Siehe Sortierung.
Vorlagen
[Bearbeiten | Quelltext bearbeiten]Alle vorhandenen Vorlagen sollten kategorisiert sein:
Vorlagen für Tabellenstruktur
[Bearbeiten | Quelltext bearbeiten]Der Einsatz von Vorlagen für Tabellen gleicher Thematik ermöglicht ein konsistentes Tabellenlayout, eine Prüfung der Daten auf Gültigkeit, Erleichterung bei der Fehlerbehandlung, die Einhaltung der Konvention „Farben verwenden“ sowie einfache Anpassung des Layouts bei allen Tabellen.
Empfehlenswert ist es, ein Paket mit einer Basis-Vorlage zu bilden:
Vorlage:MeineStrukturVorlage
– definiert eine einzelne TabellenzeileVorlage:MeineStrukturVorlage/Kopf
– Kopfzeile; Tabellenanfang
Insbesondere wenn im Fußbereich noch eine Legende dargestellt werden soll, bietet sich an:
Vorlage:MeineStrukturVorlage/Fuß
Sollen jetzt auf vielen Seiten ähnliche Tabellen dargestellt werden, kann die Programmierung einmalig einheitliche Überschriften und dekorative Vorgaben festlegen.
- Die Vorlage für die Kopfzeile beginnt die Ausgabe mit
{|
oder kann noch einen einleitenden Vorlauf voranstellen.- Danach folgen die Kopfzeilen.
- Parameter sind selten erforderlich.
- Die Vorlage für die Tabellenzeile erhält als Parameter die darzustellenden Werte in den Spalten.
- Die Ausgabe beginnt mit
|-
und wird von den Zellen der Spalten gefolgt. - Die Parameter enthalten die Daten, wobei sich im Lauf der Zeit die Zuordnung von Daten zur ersten, zweiten usw. Spalte ändern kann.
- Die Daten können vor der Darstellung ergänzt und formatiert werden, sollten also auf den Nutzinhalt beschränkt werden. Gleichförmige Erweiterungen sollten durch die Vorlagenprogrammierung ergänzt werden, wodurch auch eine zentrale Aktualisierung möglich ist.
- Die Daten können auf Gültigkeit geprüft werden; beim völligen Fehlen von Pflichtangaben oder bei unerlaubten Inhalten kann in der Tabellenzelle eine auffallende und konkrete Fehlermeldung dargestellt werden.
- Die Ausgabe beginnt mit
- Oft haben alle Tabellen genau gleiche Struktur, also gleiche Spalten.
- Es können auch Modifikationen erfolgen, indem zusätzliche Spalten hinzukommen oder nicht benötigte Spalten wegfallen. Dann muss die Vorlage für die Kopfzeile mit entsprechenden Steuerparametern eingebunden werden, und aus den Daten für jede Tabellenzeile muss sich ergeben, welche Spalten gewünscht sind.
- In jedem Fall müssen die Programmierungen für die Kopf- und Datenzeilen inhaltlich synchronisiert gehalten werden. Das ist jedoch wesentlich einfacher als Hunderte von Artikeln umzuschreiben.
- Weil die zwei bis drei Vorlagen als Ober- und Unterseiten organisiert sind, ist absolut klar, wie sie zusammengehören.
Vorlagen für Dekorationsstil
[Bearbeiten | Quelltext bearbeiten]In bestimmten Themenbereichen kann ein einheitliches Erscheinungsbild gewünscht sein, ohne jedoch die Tabellenstruktur (Anzahl und Inhalte der Spalten) vorzugeben mittels Vorlagen für Tabellenstruktur.
Die Einbindung ist nach dem {|
einzufügen.
Quelltext einer Tabelle mit einer MeineDekoVorlage
, die bestimmte Zuweisungen für style=
bzw. class=
liefert:
{| {{MeineDekoVorlage}}
|-
! Treffpunkt Y- u. X-Achse
! Exempel
! Beispiel
! Muster
|-
| X1
|class="hintergrundfarbe6"| X2
| X3
| X4
|-
| Y1
|class="hintergrundfarbe8"| Y2
| Y4
|class="hintergrundfarbe7"| Y5
|}
Info:
- Erfolgt hinter der Vorlage eine Zuweisung durch
class
oderstyle
, so werden die Attribute aus der Vorlage dadurch überschrieben oder unwirksam. - Stehen solche Zuweisungen vor der Vorlage
{| style="text-align:center;" {{MeineDekoVorlage}}
, so bleiben die Attribute der Vorlage nicht notwendigerweise wirksam. Vielmehr kann es sein, dass eine wiederholte Zuweisungstyle=
die erste überschreibt, oder aber dass die wiederholte Zuweisungstyle=
völlig ignoriert wird. - Wenn überhaupt, muss eine solche Vorlage die Parameter
style=
bzw.class=
anbieten, und deren optionale Werte sind in ihrer Programmierung im Anschluss an deren Vorgaben anzufügen, wodurch es insgesamt nur zu je einer einzigen wirksamen HTML-Zuweisungstyle=
bzw.class=
kommt.
Tabellen als Vorlagenparameter
[Bearbeiten | Quelltext bearbeiten]Bei der Vorlagensyntax trennt eine „offene“ Pipe |
den einen Vorlagenparameter vom nächsten ab.
- Tabellen bestehen jedoch aus sehr vielen Pipe-Symbolen, beginnend mit
{|
und endend mit|}
und weitere für jede Zeile und Zelle. - Jedes Pipe-Symbol der Tabellensyntax muss, damit es nicht als Ende des Parameterwerts interpretiert wird, durch
{{!}}
ersetzt werden. Das macht keinen Spaß und wird deshalb vermieden.
Generierung von Tabellen mittels Vorlagen
[Bearbeiten | Quelltext bearbeiten]Eine häufige Aufgabe ist es, dass aus einer bestimmten Zusammenstellung aktueller Daten eine vollständige Tabelle generiert werden soll.
- Infoboxen sind der klassische Fall.
- In Abhängigkeit von aktuellen Daten ergibt sich die Notwendigkeit, bestimmte Zeilen ganz wegzulassen; selten auch einmal bestimmte Spalten.
Die folgende Methodik ist etwas aufwändig, jedoch optimal für robust generierte Syntax:
{{#if: {{{ID|}}} | <nowiki />
{{!}}-
! Bezeichner:
{{!}} {{{ID}}}
}}{{#if: {{{Name|}}} | <nowiki />
- Wenn der Parameter
ID
nicht leer angegeben wurde, wird eine Tabellenzeile generiert. - Das
<nowiki />
behält den Zeilenumbruch danach bei, während dieser Zweig der#if
-Abfrage ansonsten führende und schließende Leerzeichen und Zeilenumbrüche entfernen würde. - Aus den
{{!}}
werden|
. - Die Leerzeichen am Zeilenbeginn vor der Tabellensyntax stören die Programmierung nicht, machen aber die Programmierung für Menschen besser lesbar.
- Unmittelbar nach den schließenden
}}
muss die nächste Abfrage beginnen, weil sonst bei mehreren leeren Parameterwerten Leerzeilen kumulieren würden und diese als störender Absatz sichtbar werden. - Ist der Parameterwert von
ID
leer oder nicht angegeben, führt das Konstrukt zu keinerlei Ausgabe.
Anmerkungen
[Bearbeiten | Quelltext bearbeiten]- ↑ Derzeit (2024) kann diese Klasse nicht bei der Bearbeitung mit dem VisualEditor beeinflusst werden. Soll die Zebrafärbung aufgehoben oder verändert werden, so muss dies im Wikitextmodus geschehen.