Hilfe:Tabellen für Fortgeschrittene

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Diese Seite enthält eine ausführliche Darstellung der MediaWiki-Tabellensyntax. Für einen Schnelleinstieg siehe Hilfe:Tabellen.

Komplexere Tabellen[Bearbeiten | Quelltext bearbeiten]

Rahmen[Bearbeiten | Quelltext bearbeiten]

Bis jetzt haben unsere Tabellen noch keine Umrandungen. Die Umrandung wird in der ersten Zeile (direkt hinter dem {|) festgelegt. Momentan kann nur die Rahmenstärke festgelegt werden – mit dem Argument: border="x", wobei x die Stärke des Rahmens ist.

Das letzte Beispiel von Hilfe:Tabellen sieht mit Rahmen im Text so aus:

Eingabe Ergebnis
{| border="1"
| Zelle 1
| Zelle 2
|-
| Zelle 3
| Zelle 4
|-
| Zelle 5
| Zelle 6
|}
Zelle 1 Zelle 2
Zelle 3 Zelle 4
Zelle 5 Zelle 6

Mit border="3" erhält man:

Zelle 1 Zelle 2
Zelle 3 Zelle 4
Zelle 5 Zelle 6

Kopfzeilen[Bearbeiten | Quelltext bearbeiten]

Eine Tabelle mit Kopfzeile oder Kopfspalte erreicht man, indem die Zellen, die hervorgehoben werden sollen, mit „!“ statt „|“ eingeleitet werden. In diesen Zellen erscheint der Text nun zentriert und fett.

Eingabe Ergebnis
{| border="1"
! 
! A
! B
|-
! Name 
| Zelle 1
| Zelle 2
|-
! Was 
| Zelle 3
| Zelle 4
|-
! Warum 
| Zelle 5
| Zelle 6
|}
A B
Name Zelle 1 Zelle 2
Was Zelle 3 Zelle 4
Warum Zelle 5 Zelle 6

Spalten- und zeilenübergreifende Darstellung[Bearbeiten | Quelltext bearbeiten]

Auch mit der Wiki-Syntax ist es, genauso wie bei HTML, möglich, dass eine Zelle über mehrere Spalten reicht (colspan) oder Zeilen überspannt (rowspan). Rowspan- und colspan-Angaben werden der Zelle als Attribute mitgegeben, und zwar nach dem Prinzip

| Attribute | Inhalt

Eine Tabelle mit einer Zelle, die über zwei Spalten geht (colspan="2") sieht so aus:

Eingabe Ergebnis
{| border="1"
! A
! B
! C
|-
| Zelle 1
| colspan="2" style="text-align:center"| Zelle 2
|-
| Zelle 3
| Zelle 4
| Zelle 5
|}
A B C
Zelle 1 Zelle 2
Zelle 3 Zelle 4 Zelle 5

Eine Tabelle mit einer Zelle, die über zwei Zeilen geht (rowspan="2") sieht so aus:

Eingabe Ergebnis
{| border="1"
! A
! B
|-
| rowspan="2" style="text-align:center"| Zelle 1
| Zelle 2
|-
| Zelle 4
|}
A B
Zelle 1 Zelle 2
Zelle 4

Und kombiniert:

Eingabe Ergebnis
{| border="1"
! A
! B
! C
|-
| rowspan="2" colspan="2"| A1 & B1 & A2 & B2
| C1
|-
| C2
|-
| A3
| B3
| C3
|}
A B C
A1 & B1 & A2 & B2 C1
C2
A3 B3 C3

Leere Zellen in Tabellen mit Rahmen[Bearbeiten | Quelltext bearbeiten]

Leere Zellen werden in CSS-2.1-konformen Browsern umrahmt, erzeugen jedoch keine eigene Textzeile. Um auch im Internet Explorer bis Version 7 einen Rahmen zu bekommen und in anderen Browsern eine Textzeile in gewöhnlicher Zeilenhöhe zu erzwingen, kann man ein geschütztes HTML-Leerzeichen   setzen. So sieht normalerweise eine Tabelle mit Leerzellen aus:

Normal
Zelle 1 Zelle 2
Zelle 9 Zelle 12
Zelle 13 Zelle 14 Zelle 15 Zelle 16

Das gleiche Beispiel mit geschützten HTML-Leerzeichen im Text:

Eingabe Ergebnis
{| border="1"
|+ Sicherer
|-
| Zelle 1
| Zelle 2
|  
|  
|-
|  
|  
|  
|  
|-
| Zelle 9
|  
|  
| Zelle 12
|-
| Zelle 13
| Zelle 14
| Zelle 15
| Zelle 16
|}
Sicherer
Zelle 1 Zelle 2    
       
Zelle 9     Zelle 12
Zelle 13 Zelle 14 Zelle 15 Zelle 16

Verschachtelte Tabellen[Bearbeiten | Quelltext bearbeiten]

Das Verschachteln ist mit der Wiki-Syntax sehr einfach. Man muss nur an der Stelle, an der man eine weitere Tabelle innerhalb einer anderen Tabelle wünscht, eine neue öffnende Klammer setzen. Wichtig ist es nur, dass dort am Anfang der Textzeile ausnahmsweise kein senkrechter Strich stehen darf! Eine Tabelle, in der eine weitere Tabelle steckt, sieht im Text so aus:

Eingabe Ergebnis
{| border="1"
| Zelle 1
|
 {| border="2"
 | Zelle A
 |-
 | Zelle B
 |}
| Zelle 3
|}
Zelle 1
Zelle A
Zelle B
Zelle 3

Beschriftung[Bearbeiten | Quelltext bearbeiten]

Mit der Wiki-Syntax ist es leicht möglich, eine Beschriftung über der Tabelle anzugeben. Diese Beschriftung ist zentriert und maximal genauso breit wie die Tabelle mit automatischem Zeilenumbruch. Um eine Beschriftung einzubauen reicht es, nach dem senkrechten Strich und vor dem Text ein Plus + zu setzen. Innerhalb der Beschriftung kann man ganz normal mit der Wiki-Syntax formatieren.

Eine Tabelle mit Beschriftung sieht im Text so aus:

Eingabe Ergebnis
{| class="wikitable"
|+ Dies ist eine Beschriftung, die ''ziemlich'' lang ist.
| Zelle 1
| Zelle 2
|-
| Zelle 3
| Zelle 4
|}
Dies ist eine Beschriftung, die ziemlich lang ist.
Zelle 1 Zelle 2
Zelle 3 Zelle 4

Senkrechte Beschriftung von Spalten nicht möglich[Bearbeiten | Quelltext bearbeiten]

Senkrechte Beschriftung von Spalten ist in der Wikipedia nicht möglich.

Eine senkrechte bzw. vertikale Beschriftung, Schrift bzw. Text insbesondere in der Überschrift kann die Spaltenbreite einer Tabelle reduzieren und somit die Übersichtlichkeit erhöhen. Dies ist zwar technisch möglich, wird aber von einigen Browsern nicht korrekt wiedergegeben. Daher ist diese Darstellung im Artikelnamensraum der Wikipedia nicht hilfreich und somit unerwünscht.

Aufzählungszeichen[Bearbeiten | Quelltext bearbeiten]

Will man Aufzählungszeichen in einer Tabelle verwenden, so muss der erste Listeneintrag in einer neuen Zeile beginnen. Andernfalls wird beim ersten Eintrag anstatt eines Aufzählungszeichens ein Sternchen angezeigt.

Eingabe Ergebnis
{| border="1"
|* erster Eintrag
* zweiter Eintrag
|}
* erster Eintrag
  • zweiter Eintrag
{| border="1"
|
* erster Eintrag
* zweiter Eintrag
|}
  • erster Eintrag
  • zweiter Eintrag

Senkrechter Strich als Zelleninhalt[Bearbeiten | Quelltext bearbeiten]

Will man einen senkrechten Strich (englisch: pipe) in einer Tabelle verwenden, muss zusätzlich der senkrechte Strich, der den Zellenanfang markiert, verdoppelt werden. Somit ergibt sich eine leere Attributliste und MediaWiki sieht den nächsten senkrechten Strich nicht als Trenner an, sondern übernimmt ihn als Text.

Der senkrechte Strich als Teil von Wikilinks und Vorlagen ist davon unberührt.

Alternativ kann | verwendet werden.

Eingabe Ergebnis
{| class="wikitable"
|-
| Zelle m|t pipe (falsch)
| Text
|-
|| Zelle m|t pipe (richtig)
| Text
|-
| Text || Zelle m|t pipe (falsch)
|-
| Text ||| Zelle m|t pipe (richtig)
|}
t pipe (falsch) Text
Zelle m|t pipe (richtig) Text
Text t pipe (falsch)
Text Zelle m|t pipe (richtig)

Sortierbare Tabellen[Bearbeiten | Quelltext bearbeiten]

Abkürzung für diesen Abschnitt: WP:TSORT

Siehe auch: MediaWiki Handbook – Über das Sortieren (englisch)

Tabellen können auch nach ihren Werten pro Spalte sortiert werden. Dazu muss class="sortable" im Tabellenkopf angegeben werden.

Eine sortierbare Tabelle erkennt man daran, dass sie in den Spaltenköpfen kleine Doppelpfeilsymbole zeigt. Bei Anklicken werden die Zeilen der Tabelle nach den Werten der jeweiligen Spalte sortiert. Die Symbole sind auch als Icons (Sort both.svg und schmal Sort both small.svg) verfügbar.

Eingabe Ergebnis
{| class="wikitable sortable"
! Spalte 1
! Spalte 2
! Spalte 3
|-
| 12346
| 234,44 €
| fghij
|-
| 98765
| 77,55 €
| abcde
|-
| 123456
| 1234,56 €
| klmno
|}
Spalte 1 Spalte 2 Spalte 3
12346 234,44 € fghij
98765 77,55 € abcde
123456 1234,56 € klmno

Einschränkungen: Bei komplexen Tabellen (d. h. solchen mit ungleichmäßigen Reihen und Spalten) ist eine Sortierung nicht immer möglich.

Das Sortieren funktioniert nur bei aktivem JavaScript – weil der Leser das unter Umständen ausgeschaltet hat, und auch, weil der Artikel noch druckfähig sein soll, muss die Tabelle bei der Eingabe im WikiCode schon sinnvoll sortiert sein.

Festlegung des Sortiermodus und Sortierreihenfolge[Bearbeiten | Quelltext bearbeiten]

Der Datentyp der obersten 5 Zellen bestimmt den Sortiermodus. Erkannt werden Datumsangaben, Währungen, Prozentwerte, Zahlen und IP-Adressen. Der Datentyp für den Sortiermodus kann auch direkt vorgegeben werden mit dem Attribut data-sort-type. Damit kann eventuell auf spezielle Vorlagen verzichtet werden. Mögliche Werte sind: text, number, currency, time, date, isoDate, usLongDate, url, IPAddress. Ein Beispiel:

Eingabe Ergebnis
{|class="wikitable sortable"
! data-sort-type="text"|text
! data-sort-type="number"|number
! data-sort-type="currency"|currency
! data-sort-type="time"|time
! data-sort-type="date"|date
! data-sort-type="isoDate"|isoDate
|-
|A||-5 m||1,72 €||6:30||1. Januar 12||2012-01-01 
|-
|Ä||3,2 m||3 €||9:59:59||02. Jan. 2012||2012-01-02 
|-
|Ab||20 m||2.000 €||10:00||03.01.2012||2012-01-03 
|}
text number currency time date isoDate
A -5 m 1,72 € 6:30 1. Januar 12 2012-01-01
Ä 3,2 m 3 € 9:59:59 02. Jan. 2012 2012-01-02
Ab 20 m 2.000 € 10:00 03.01.2012 2012-01-03

Passt keiner dieser Datentypen, wird der Text alphabetisch sortiert. Dazu wird seit Juni 2019[1] das Objekt Intl.Collator benutzt, das auch Umlaute und andere diakritische Zeichen richtig sortiert. Nur das Betriebssystem Android unterstützt das nicht, dann wird in der Reihenfolge des Unicode sortiert: !"#$%&'()*+,-./0…9:;<=>?@[\]^_'a…z{|}~ßäéöü—

Umlaute stehen weit hinten. Für die richtige Sortierreihenfolge werden die Umlaute Ä,Ö,Ü,ä,ö,ü und das ß automatisch ersetzt. Für andere diakritische Zeichen muss mit dem Attribut data-sort-value (z. B. | data-sort-value="Department"| Départment) der richtige Sortierschlüssel gesetzt werden. Bis September 2012 wurde dazu die Vorlage:SortKey (z. B. | {{SortKey|Department}} Départment) verwendet. Die Sortierregeln sind bei der Sortierung in eine Kategorie beschrieben.

Rangspalte[Bearbeiten | Quelltext bearbeiten]

Oftmals ist erwünscht, für jede Umsortierung die jeweils geltende Rangordnung anzugeben (z. B. Städte nach Einwohnerzahlen oder Fläche). Da eine in der Tabelle integrierte Rangspalte mitsortiert wird, lässt sich eine solche beim Sortieren gültig bleibende Rangspalte nur mit einer Tabelle in einer Tabelle erreichen, wie sie in der Liste der Großstädte in Deutschland realisiert war. Die Zuordnung bleibt aber nur so lange erhalten, wie beide Tabellen gleiche Zeilenhöhen behalten.

Eingabe Ergebnis

{| class="wikitable"
|
{| class="wikitable"
! unsortierter Rang
|-
|1
|-
|2
|}
|
{| class="wikitable sortable"
! sortierter Rang
! Spalte 1
|-
| 1 || 12346
|-
| 2 || 98765
|}
|}
unsortierter Rang
1
2
sortierter Rang Spalte 1
1 12346
2 98765

Sortierbare Namen[Bearbeiten | Quelltext bearbeiten]

Nach der Namenskonvention steht in Wikipedia zuerst der Vorname, gefolgt vom Nachnamen.

Die Vorlage:PersonZelle sorgt dafür, dass die Tabellenspalten hier dennoch nach dem Nachnamen sortiert und verlinkt werden. Bei komplizierteren Namen, beispielsweise mit zwei Vornamen oder mit Sonderzeichen im Namen, funktioniert das Attribut data-sort-value.

Eingabe Ergebnis
{| class="wikitable sortable"
|-
! Name !! Vorname !! Nachname
|-
| {{PersonZelle|Bernd|Müller}}
| Bernd
| Müller
|-
| {{PersonZelle|Hans|Zehnder}}
| Hans
| Zehnder
|-
| {{PersonZelle|Stefan|Ackermann}}
| Stefan
| Ackermann
|-
| data-sort-value="Ambrozy, Peter"| Peter M. Ambrozy
| Peter,.&nbsp;Michael
| Ambrozy
|-
| data-sort-value="Osterle"| Inge Österle
| Inge
| Österle
|}
Name Vorname Nachname
Bernd Müller Bernd Müller
Hans Zehnder Hans Zehnder
Stefan Ackermann Stefan Ackermann
Peter M. Ambrozy Peter, Michael Ambrozy
Inge Österle Inge Österle

Zahlen und Buchstaben[Bearbeiten | Quelltext bearbeiten]

Wenn in den ersten 5 Zeilen nur Zahlen ohne weiteren Text stehen, wird numerisch sortiert. Text nach einer Zahl (z. B. eine Fußnote) ändert den Sortiermodus aber in alphabetisch. Mit dem Attribut data-sort-type="number" im Tabellenkopf kann der numerische Sortiermodus erzwungen werden. Text nach einer Zahl wird dadurch ignoriert.

Eingabe Ergebnis
{|class="wikitable sortable"
!nur Zahlen
!data-sort-type="number"|Zahlen mit Buchstaben
|-
| 1789
| 1789<ref>Quellenangabe</ref>
|-
| 3E8
| 300000000 m²
|-
| 1.000.000
| 1.000.000 kg
|-
| −4000
| data-sort-value="-4000"| 4000 bis 3000 v.Chr.
|-
| 20,3456
| ca. 20
|-
| 2.000
| 2.000
|-
| 1500
| 1500
|}
nur Zahlen Zahlen mit Buchstaben
1789 1789[1]
3E8 300000000 m²
1.000.000 1.000.000 kg
−4000 4000 bis 3000 v.Chr.
20,3456 ca. 20
2.000 2.000
1500 1500

Mit dem Attribut data-sort-value="-4000" wurde ein vom sichtbaren Text abweichender Sortierwert vorgegeben. Damit wird die Sortierung unabhängig vom Zelleninhalt. Der data-sort-value wird länderspezifisch geparst, für die Interpretation 1/2 ist "0,5" zu schreiben, nicht "0.5".

Währungen, %-Zeichen[Bearbeiten | Quelltext bearbeiten]

Bei einem Währungszeichen am Anfang oder Ende oder %-Zeichen wird ebenfalls numerisch sortiert.

USD
$ 9,50
$ 80
$ 70
$ 600
EUR
9,50 €
80 €
70 €
600 €
GBP
£ 9,50
£ 80
£ 70
£ 600
JPY
¥ 9,50
¥ 80
¥ 70
¥ 600
Prozent
9,50 %
80 %
70 %
600 %

Um Zahlen und Geld-Währungen untereinander anzuordnen, werden sie rechtsbündig formatiert. Eine andere Variante ist unten unter #Ausrichtung nach der Kommastelle beschrieben.

Eingabe Ergebnis
{| class="wikitable sortable"
|-
! Gewinn
|-
| style="text-align:right"| 1,00 €
|-
| style="text-align:right"| 3.000,02 €
|-
| style="text-align:right"| 2.000,10 €
|-
| style="text-align:right"| 10.000 €
|}
Gewinn
1,00 €
3.000,02 €
2.000,10 €
10.000 €
{| class="wikitable sortable" style="text-align:right"
|-
! Gewinn
|-
| 1,00 €
|-
| 3.000,02 €
|-
| 2.000,10 €
|-
| 10.000 €
|}
Gewinn
1,00 €
3.000,02 €
2.000,10 €
10.000 €

Zahlen können mit dem Attribut data-sort-type="text" auch alphabetisch sortiert werden. Mit dem Attribut data-sort-value kann ein vom sichtbaren Text abweichender Sortierwert vorgegeben werden.

Eingabe Ergebnis
{| class="wikitable sortable"
! data-sort-type="text"| Nummer !! Ort
|-
| data-sort-value="033_"| 033x  || [[Brandenburg]]
|-
| 0330x  || Oranienburg und Umgebung
|-
| 03301 || [[Oranienburg]]
|-
| 03302 || [[Hennigsdorf]]
|}
Nummer Ort
033x Brandenburg
0330x Oranienburg und Umgebung
03301 Oranienburg
03302 Hennigsdorf

Exponentialdarstellung[Bearbeiten | Quelltext bearbeiten]

Für die Darstellung und richtige Sortierung von Zahlen in Exponentialdarstellung gibt es die Vorlage:10Esort.

Eingabe Ergebnis
{| class="wikitable sortable"
! Exponentialdarstellung
|-
| {{10Esort|0|0}}
|-
| {{10Esort|3|−8}}
|-
| {{10Esort|3|8}}
|}
Exponentialdarstellung
null0
p49233·10−8
p50833·108

Römische Zahlen[Bearbeiten | Quelltext bearbeiten]

Für die Darstellung und richtige Sortierung römischer Zahlen gibt es die Vorlage:Römische Zahl. Sie müssen mit führenden Nullen angegeben werden.

Eingabe Ergebnis
{| class="wikitable sortable"
! Römisch
|-
| {{Römische Zahl|05}}
|-
| {{Römische Zahl|10}}
|-
| {{Römische Zahl|35}}
|}
Römisch
V
X
XXXV

Datumswerte[Bearbeiten | Quelltext bearbeiten]

Die meisten Datumsangaben werden auch ohne Vorlage richtig sortiert, wenn die ganze Spalte einheitlich wie folgt aufgebaut ist: T. M. JJ oder TT. MM. JJJJ. Der Tag (T) und Monat (M) darf ein oder zwei Ziffern haben, das Jahr (J) muss mit 2 oder 4 Ziffern angegeben werden. Jahreszahlen vor Christus sind nicht möglich. Der Monat kann auch ausgeschrieben oder mit 3 Buchstaben abgekürzt werden. Nach dem Punkt muss nicht unbedingt ein Leerzeichen stehen. Weitere Schreibweisen z. B. MM.TT.JJJJ und Trennzeichen (.,'-/) sind möglich. Wenn nur Ziffern verwendet werden, kann nach dem Datum noch weiterer Text folgen. Intern wird ein numerischer Sortierschlüssel der Form JJJJMMTT verwendet.

Alternativ dazu formatiert die Vorlage:Dts alle Datumsangaben einheitlich und sortierbar mit einem alphabetischem Sortierschlüssel. Für die korrekte Funktion muss sie immer am Anfang einer Zelle stehen. Für Datumsangaben im Format ISO 8601 gibt es die Vorlage:SortDate.

Eingabe Ergebnis
{| class="wikitable sortable"
! Geburtstag
|-
| 21.04.1991 Text
|-
| {{0}}1. Mai 1991
|-
| 07. Dez. 1994
|}
Geburtstag
21.04.1991 Text
01. Mai 1991
07. Dez. 1994
{| class="wikitable sortable"
! Geburtstag
|-
| {{dts|21|04|1991}}
|-
| {{dts|1|Mai|1991}}
|-
| {{SortDate|1994-12-07|S}}
|}
Geburtstag
21. Apr. 1991
01. Mai 1991
07. Dez. 1994

Ausrichtung nach der Kommastelle[Bearbeiten | Quelltext bearbeiten]

Damit bei verschiedenstelligen Zahlen in einer Spalte das Komma immer übereinander dargestellt wird, kann mit der Vorlage:0 ein unsichtbarer Text eingefügt werden. Zum Beispiel erzeugt {{0}} eine unsichtbare 0 und {{0|0.00}} ein unsichtbares 0.00.

Es gibt zwei Möglichkeiten:

Linksbündige Anordnung[Bearbeiten | Quelltext bearbeiten]

Sie ist angenehmer zu lesen, also für Wikipedia geeigneter.

In der folgenden Tabelle wird die numerische Sortierung mit dem Attribut data-sort-type="number" vorgegeben, da nach den Ziffern noch viel Text folgt. Die mit {{0}} vor den Ziffern eingefügte unsichtbare 0 sorgt für die richtige Ausrichtung. Führende Nullen stören die numerische Sortierung nicht.

Eingabe Ergebnis
{| class="wikitable sortable"
! data-sort-type="number"|Wahlperiode
|-
| {{0}}9. WP: 1979–1983
|-
| 11. WP: 1987–1991
|-
| {{0}}7. WP: 1971–1975
|}
Wahlperiode
09. WP: 1979–1983
11. WP: 1987–1991
07. WP: 1971–1975
{| class="wikitable sortable"
! data-sort-type="number"|Geflogene Kilometer
|-
| {{0|0.00}}1.230 km
|-
| {{0|0.}}123.400 km
|-
| {{0|0.0}}54.300,0 km
|-
| {{0|0.000.0}}99,96 km
|-
| {{0|0.0}}12.340,0 km
|-
| 1.234.000 km
|-
| {{0|0.0}}12.340,2 km
|}
Geflogene Kilometer
0.001.230 km
0.123.400 km
0.054.300,0 km
0.000.099,96 km
0.012.340,0 km
1.234.000 km
0.012.340,2 km
{| class="wikitable sortable"
|-
! Zähler !! Wert
|-
| 1
| 1000
|-
| 2
| {{0|000}}1,0001
|-
| 3
| {{0}}200,2
|-
| 4
| {{0|000}}1,1
|}
Zähler Wert
1 1000
2 0001,0001
3 0200,2
4 0001,1

Rechtsbündige Anordnung[Bearbeiten | Quelltext bearbeiten]

Sie ist einfacher zu schreiben und für Zahlen mit immer gleicher Anzahl von Nachkommastellen genauso gut geeignet. Die zwecks Ausrichtung künstlich aufgefüllten Nachkommastellen können mit der Vorlage:0 versteckt werden; ein zu versteckendes Komma ist per {{0|,}} erzielbar:

Eingabe Ergebnis
{| class="wikitable sortable"
|-
! Zähler !! Wert
|-
| 1
| style="text-align:right"| 1000{{0|,0000}}
|-
| 2
| style="text-align:right"| 1,0001
|-
| 3
| style="text-align:right"| 200,2{{0|000}}
|-
| 4
| style="text-align:right"| 1,1{{0|000}}
|}
Zähler Wert
1 1000,0000
2 1,0001
3 200,2000
4 1,1000

Leerzellen[Bearbeiten | Quelltext bearbeiten]

Leerzellen ohne Inhalt werden beim Sortieren an den Anfang gestellt, solche mit &nbsp; (Geschütztes Leerzeichen) an das Ende.

Bilder[Bearbeiten | Quelltext bearbeiten]

Bilder werden nach dem Text in ihrem alt-Attribut sortiert. Im folgenden Beispiel nach den Buchstaben A, B, C:

Eingabe Ergebnis
{| class="wikitable sortable"
|-
! Bild 
|-
| [[Datei:Yes_check.svg|16px|A]]
|-
| [[Datei:Yes check lines.svg|16px|B]]
|-
| [[Datei:Yellow check.svg|16px|C]]
|}
Bild
A
B
C

Zellen von der Sortierung ausschließen[Bearbeiten | Quelltext bearbeiten]

Eine Spalte nicht sortieren[Bearbeiten | Quelltext bearbeiten]

Man kann eine Spalte unsortierbar machen durch einfügen von class="unsortable" in den Attributen der Kopfzeile.

Eingabe Ergebnis
{| class="wikitable sortable"
! Zahlen !! Alphabet !! Datum !! Währung !! class="unsortable"| Unsortierbar
|-
| 1 || Z || 02-02-2004 || 5,00 || Diese
|-
| 2 || y || 13-april-2005 || || Spalte
|-
| 3 || X || 17. aug. 2006 || 6,50 || ist
|-
| 4 || w || 01. Jan. 2005 || 4,20 || unsortierbar
|-
| 5 || V || 05/12/2006 || 7,15 || wie man sieht.
|-
! Gesamt: 15 !! !!  !! Gesamt: 29,55 !! [http://www.joostdevalk.nl/code/sortable-table/ Originalbeispiel]
|}
Zahlen Alphabet Datum Währung Unsortierbar
1 Z 02-02-2004 5,00 Diese
2 y 13-april-2005 Spalte
3 X 17. aug. 2006 6,50 ist
4 w 01. Jan. 2005 4,20 unsortierbar
5 V 05/12/2006 7,15 wie man sieht.
Gesamt: 15 Gesamt: 29,55 Originalbeispiel

Die letzte Zeile nicht sortieren[Bearbeiten | Quelltext bearbeiten]

Manchmal ist es erwünscht, die letzte Tabellenzeile von der Sortierung auszuschließen. Das kann durch Auszeichnung der Zellen in der entsprechenden Tabellenzeile als Kopfzellen erreicht werden, statt mit | und || werden Zellen also mit ! bzw. !! getrennt.

Eingabe Ergebnis
{| class="wikitable sortable"
! Name !! Vorname !! Größe
|-
| John || Smith || 1,85
|-
| Ron || Ray || 1,89
|-
| Mario || Bianchi || 1,72
|-
! colspan="2"| Durchschnitt: !! 1,82
|-
! colspan="3"| nicht sortieren
|}
Name Vorname Größe
John Smith 1,85
Ron Ray 1,89
Mario Bianchi 1,72
Durchschnitt: 1,82
nicht sortieren

Die erste Zeile nicht sortieren[Bearbeiten | Quelltext bearbeiten]

Manchmal soll hingegen die erste Zeile von der Sortierung ausgeschlossen werden. Dieses kann ebenfalls durch Auszeichnung der Zellen als Kopfzellen erreicht werden.

Eingabe Ergebnis
{| class="wikitable sortable"
! Name !! Vorname !! Größe
|-
! colspan="3"| nicht sortieren
|-
| John || Smith || 1,85
|-
| Ron || Ray || 1,89
|-
| Mario || Bianchi || 1,72
|-
! colspan="2"| Durchschnitt: !! 1,82
|}
Name Vorname Größe
nicht sortieren
John Smith 1,85
Ron Ray 1,89
Mario Bianchi 1,72
Durchschnitt: 1,82

Sortbottom[Bearbeiten | Quelltext bearbeiten]

Die früher hierfür benutzte Klasse sortbottom ist veraltet. Der Ausschluss einer Zeile von der Sortierung funktioniert allerdings nur dann, wenn es sich tatsächlich um die erste(n) oder die letzte(n) Zeile(n) einer Tabelle handelt. Folgen auf die Zeile, die von einer Sortierung ausgeschlossen werden soll, weitere sortierbare Zellen und dazwischen weitere durch ! eingeleitete Kopfzellen (wie Zwischenüberschriften), so werden diese Zeilen in die Sortierung einbezogen. Über die Zuweisung der class="sortbottom" kann man erreichen, dass die Kopfzellen zwischen sortierbaren Zeilen während der Sortierung an das Ende der Tabelle verschoben und nicht in die Sortierung einbezogen werden. Diese Zuweisung hat jedoch keinen Einfluss auf eine oben eingefügte Zwischenüberschrift.

Eingabe Ergebnis
{| class="wikitable sortable"
! Name !! Vorname !! Größe
|-
! colspan="3"| nicht sortieren
|-
| John || Smith || 1,85
|-
| Ron || Ray || 1,89
|-
! colspan="3"| Zwischenüberschrift
|-
| Mario || Bianchi || 1,72
|-
! colspan="2"| Durchschnitt: !! 1,82
|}
Name Vorname Größe
nicht sortieren
John Smith 1,85
Ron Ray 1,89
Zwischenüberschrift
Mario Bianchi 1,72
Durchschnitt: 1,82
Eingabe Ergebnis
{| class="wikitable sortable"
! Name !! Vorname !! Größe
|- class="sortbottom"<!--wirkungslos-->
! colspan="3"| nicht sortieren
|-
| John || Smith || 1,85
|-
| Ron || Ray || 1,89
|- class="sortbottom"
! colspan="3"| Zwischenüberschrift
|-
| Mario || Bianchi || 1,72
|-
! colspan="2"| Durchschnitt: !! 1,82
|}
Name Vorname Größe
nicht sortieren
John Smith 1,85
Ron Ray 1,89
Zwischenüberschrift
Mario Bianchi 1,72
Durchschnitt: 1,82

Anfangssortierung nach einer bestimmten Spalte (default order)[Bearbeiten | Quelltext bearbeiten]

Es ist nicht möglich, eine Tabelle mit einer vordefinierten Sortierung einer bestimmten Spalte darzustellen. Der Leser muss eine bestimmte Sortierung selber vornehmen. Standardmäßig werden die Zeilen der Tabelle in der Reihenfolge dargestellt, in welcher sie im Wikitext stehen. Soll die Tabelle bereits nach einer bestimmten Spalte sortiert dargestellt werden, muss diese Sortierung bereits im Wikitext vorgenommen werden. Wie das gemacht werden kann, ist im nächsten Abschnitt beschrieben.

Beispiel für das Vorsortieren des Wikitextes einer Tabelle[Bearbeiten | Quelltext bearbeiten]

Zur Umsortierung des Wikitextes kann man eine sortierbare Hilfstabelle benutzen, in welcher jede Zeile als Wikitext dargestellt wird. Nach erfolgter Sortierung kann der angezeigte Tabelleninhalt kopiert und direkt als Wikitext verwendet werden.

Originaltabelle:

Beispiel
9
12
11

Hilfstabelle:

Eingabe Ergebnis
{|class="wikitable sortable"
!Beispiel
|-
|<nowiki>|-</nowiki><br /><nowiki>| 9</nowiki>
|-
|<nowiki>|-</nowiki><br /><nowiki>|12</nowiki>
|-
|<nowiki>|-</nowiki><br /><nowiki>|11</nowiki>
|}
Beispiel
|-
| 9
|-
|12
|-
|11

Nachdem man den sortierten Inhalt der Hilfstabelle nun in das Bearbeitungsfenster als neuen Tabelleninhalt zwischen den Kopfbereich und die Abschlusszeile der Tabelle kopiert hat, enthält die neue Tabelle nun standardmäßig die vorgenommene Sortierung.

Die Sortierung von Tabellen im Wikitext nach einer anderen als der ersten Spalte ist nur mit Hilfe externer Tools möglich. So kann die Tabelle mit Hilfe des Python-Skripts wiki2csv in eine CSV-Datei umgewandelt werden, in dieser Form mit einem Tabellenkalkulationsprogramm sortiert und dann mit Hilfe desselben Skripts wieder zurückgewandelt werden.

Zellen miteinander verbinden (colspan und rowspan)[Bearbeiten | Quelltext bearbeiten]

Sollen in sortierbaren Tabellen Zellen zeilenweise (Attribut rowspan) miteinander verbunden werden, wird diese Verbindung bei erstmaliger Sortierung automatisch wieder aufgehoben. Seit Sept. 2015 wird bei einem spaltenweisen Verbund (Attribut colspan) der Inhalt in jeder verbundenen Spalte verwendet. Der Datentyp wird für jede der verbundenen Spalten separat ermittelt. Wenn im Tabellenkopf mit dem Attribut data-sort-type ein bestimmter Datentyp angegeben wird, wirkt er für alle Spalten dieses Tabellenkopfes. Vergessene Zellen am Ende der Reihe werden nach der ersten Sortierung in eine Zelle mit leerem Inhalt gewandelt.

rowspan
Datum Name Größe
01.01.1964 Schmidt 1,85 m
Adam
Bianchi 1,72 m
colspan
A B C
A 2 1
B 1 3
C 2

Hinweise[Bearbeiten | Quelltext bearbeiten]

|-
! style="background-color:#B9FFC5"|Spalte 1
! style="background-color:#B9FFC5"|Spalte 2
|-
  • {| class="wikitable sortable"
|- class="hintergrundfarbe9"
! Spalte 1
! Spalte 2
|-
bgcolor="#B9FFC5" oder style="background:#B9FFC5" funktionieren nicht.

Formatierungen[Bearbeiten | Quelltext bearbeiten]

Farben, Ränder, Abstände und Spaltenbreiten können durch CSS-Styles vielfältig beeinflusst werden. Bevor man sich dazu entschließt, sollte man über die Notwendigkeit des Unterfangens nachgedacht haben und auch Bestrebungen zur Vereinheitlichung berücksichtigen (siehe „Tabellen einbinden“ in „Wie sehen gute Artikel aus“ und Formatvorlagen).

Spaltenbreiten[Bearbeiten | Quelltext bearbeiten]

Spaltenbreiten können relativ und absolut angegeben werden. Die Breitenangabe ist nur bei einer Zelle der Spalte notwendig und sinnvoll. Sind nur einige Spalten zu schmal oder zu breit, genügt eine relative Breitenangabe in nur diesen Spalten. Ist der Inhalt einer Zelle größer als die vorgegebene Spaltenbreite, wird die Spalte automatisch erweitert und die Vorgabe der Spaltenbreite damit unwirksam.

Eingabe Ergebnis
{| border="1"
! style="width:10%"| 10 %
! style="width:30%"| 30 %
! style="width:60%"| 60 %
|-
| A
| B
| C
|}
10 % 30 % 60 %
A B C
{| border="1"
! style="width:2em"| 2
! style="width:10em"| 10
! style="width:20em"| 20
|-
| A
| B
| C
|}
2 10 20
A B C

Prozentangaben werden in der Regel nicht 1:1 umgesetzt, die Breiten variieren. Mit Angaben in den Einheiten em und ex kann die Spaltenbreite relativ zur Laufweite einer Zeile gesetzt werden. Die absolute Angabe in Pixeln mit width="10" oder style="width:10px" soll nur beim Einbinden von Grafiken eingesetzt werden.

Zellenabstände mit cellspacing und cellpadding[Bearbeiten | Quelltext bearbeiten]

Mit cellspacing kann der Abstand zwischen den Zellen festgelegt werden. Je größer der Cellspacing-Wert, desto breiter wird der Steg zwischen den Zellen. Mit cellpadding bestimmt man den Abstand des Zellinhaltes vom Zellrahmen. Das CSS-Attribut style="border-collapse:collapse" lässt zusammenfallende Zellumrandungen verschwinden.

Eingabe Ergebnis
{|
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta
{| border="1"
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta
{| border="1" cellspacing="10" cellpadding="0"
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta
{| border="1" cellspacing="0" cellpadding="10"
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta
{| border="1" cellspacing="10" cellpadding="10"
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta
{| border="1" cellspacing="0" cellpadding="10" style="border-collapse:collapse"
| Alpha || Beta || Gamma
|-
| Delta || Epsilon || Zeta
|}
Alpha Beta Gamma
Delta Epsilon Zeta

Ausrichtung[Bearbeiten | Quelltext bearbeiten]

Genau wie in HTML kann man den Inhalt von Zellen in der Tabelle unterschiedlich ausrichten. Dabei kann man die Attribute einzelnen Zellen oder auch ganzen Zeilen zuweisen. Für die Ausrichtung wird der Einsatz von CSS-Befehlen empfohlen, das vertical-align gilt jeweils für die ganze Zeile, das text-align nur für die jeweilige Zelle.

Eingabe Ergebnis
{| class="wikitable"
!
! style="text-align:left"| Links
! style="text-align:center"| Zentriert
! style="text-align:right"| Rechts
|- style="vertical-align:top"
! style="text-align:left; padding:1em"| Oben
| style="text-align:left"| xx
| style="text-align:center"| xxx
| style="text-align:right"| xx
|- style="vertical-align:middle"
! style="text-align:left; padding:1em"| Mitte
| style="text-align:left"| x
| style="text-align:center"| x
| style="text-align:right"| x
|- style="vertical-align:bottom"
! style="text-align:left; padding:1em"| Unten
| style="text-align:left"| x
| style="text-align:center"| x
| style="text-align:right"| x
|}
Links Zentriert Rechts
Oben xx xxx xx
Mitte x x x
Unten x x x

Andere HTML-Formatierungen[Bearbeiten | Quelltext bearbeiten]

Mit der Wiki-Syntax ist es möglich, alte HTML-Formatierungen zu übernehmen, zum Beispiel Zellen farbig zu hinterlegen (style="background:#ABCDEF", Farbtabelle) oder Rahmen andere Farben zu geben. Diese Vorgehensweise ist bei neuen Tabellen aber nicht empfohlen.

Eingabe Ergebnis
{|
| style="background:#ABCDEF"| A
| B
|-
| C
| D
|}
A B
C D

Ein komplexeres Beispiel[Bearbeiten | Quelltext bearbeiten]

  • horizontal und vertikal verbundene Zellen
  • strukturierter, zweizeiliger Tabellenkopf
  • größere Spaltenbreite bei einer Spalte
Eingabe Ergebnis
{| class="wikitable"
|-
! colspan="2" style="text-align:center"| AB
! rowspan="2" style="text-align:center"| C
! colspan="2" style="text-align:center; width:40%"| DE
|-
! A
! B
! D
! E
|-
| colspan="2" style="text-align:center"| Zelle 1
| Zelle 2
| colspan="2" rowspan="2" style="text-align:center"| Zelle 3
|-
| Zelle 4
| Zelle 5
| Zelle 6
|}
AB C DE
A B D E
Zelle 1 Zelle 2 Zelle 3
Zelle 4 Zelle 5 Zelle 6

Formatvorlagen[Bearbeiten | Quelltext bearbeiten]

Einige Benutzer haben Vorlagen erstellt, um die Formatierung zu vereinfachen. Anstatt sich an die Tabellenparameter erinnern zu müssen, kann eine Formatvorlage verwendet werden. Diese ist nach dem {| einzufügen. Die Verwendung ermöglicht ein konsistentes Tabellenlayout, eine Erleichterung beim Fehlerhandling, die Einhaltung der Konvention „Farben verwenden“ (Farben) sowie einfache Anpassung des Layouts bei allen Tabellen.

Beispielsweise lässt sich mit der Vorlage {{Testvorlage}}, die den Code border="1" cellpadding="2" enthält, und den vorhandenen Farbvorlagen (siehe „Farbverwendung“) folgende Tabelle erstellen, welche im Quelltext keine kompliziert erscheinenden Formatierungsparameter mehr enthält:

Eingabe Ergebnis
{| {{Testvorlage}}
! Treffpunkt Y- u. X-Achse
! Exempel
! Beispiel
! Muster
|-
| X1
| class="hintergrundfarbe6"| X2
| X3
| X4
|-
| Y1
| class="hintergrundfarbe8"| Y2
| Y4
| class="hintergrundfarbe7"| Y5
|-
| Y6
| Y7
| class="hintergrundfarbe4"| Y8
| class="hintergrundfarbe2"| Y9
|}
Treffpunkt Y- u. X-Achse Exempel Beispiel Muster
X1 X2 X3 X4
Y1 Y2 Y4 Y5
Y6 Y7 Y8 Y9

Alle Vorlagen zur Tabellenformatierung stehen in der Kategorie:Vorlage:Tabellenformatierung.

Weitere Informationen[Bearbeiten | Quelltext bearbeiten]

  1. Tablesorter: Use localeCompare rMW1fed6d0