Ich habe eine Tabelle und möchte darin gern die Zellen der ersten Zeile zentriert ausrichten. Die Tabellenspalten sind jedoch mit fester Breite in einer tabularx-Umgebung definiert. Wenn ich die zentrierte Ausrichtung mit einer \multicolumn vornehme, wird leider die feste Breite der Spalten zerstört, da der Text nicht mehr umgebrochen wird. Wie kann ich nun also die zentrierte Ausrichtung der 1. Zeile (bzw. einzelner Zellen) vornehmen?

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[left=1cm,right=1cm,top=2cm,bottom=1.25cm]{geometry}

\usepackage{lmodern}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe

\begin{document}

\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
\hline
Der Text in der 1. Zeile soll zentriert sein & !!! & Der Text in der 1. Zeile soll zentriert sein & !!! \\\hline
Dieser Text & und alle weiteren Zeilen & sollen & linksbündig sein \\ \hline
multicolumn zur zentrierten & Ausrichtung ist leider & keine Lösung & da die definierte Breite der L-Spalte zestört wird \\ \hline
\end{tabularx}

\end{document}

gefragt 14 Apr '16, 06:13

Andr%C3%A9's gravatar image

André
95152635
Akzeptiert: 77%

@Clemens: Danke, funzt! =)

(14 Apr '16, 08:20) André

Wenn das wirklich nur die erste Zeile betrifft, könntest Du in den Zellen der ersten Zeile einfach \centering einsetzen. (Und in der letzten Zelle dieser Zeile \centering\arraybackslash bzw. diese Zeile mit \tabularnewline beenden statt mit \\.)

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[ngerman]{babel}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}p{#1}} % Neue
                                % Tabellenspalte: linksbündig mit
                                % Breitenangabe

\begin{document}

\noindent
\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
  \hline\centering
    Der Text in der 1.~Zeile soll zentriert sein &
    \centering !!! &
    \centering Der Text in der 1.~Zeile soll zentriert sein &
    \centering !!! \tabularnewline
  \hline
    Dieser Text &
    und alle weiteren Zeilen &
    sollen &
    linksbündig sein \\
  \hline
    multicolumn zur zentrierten &
    Ausrichtung ist leider &
    keine Lösung &
    da die definierte Breite der L-Spalte zerstört wird \\
  \hline
\end{tabularx}

\end{document}
Permanenter link

beantwortet 14 Apr '16, 09:16

Clemens's gravatar image

Clemens
20.1k123360

@Clemens: Wenn Du \Centering verwendest, brauchst Du weder \arraybackslash noch musst Du \\ durch \tabularnewline ersetzen.

(14 Apr '16, 16:54) saputello

@saputello stimmt. Ich hatte übersehen, dass ragged2e schon geladen wird…

(15 Apr '16, 04:12) Clemens

Das geht auch durchaus mit \multicolumn:

Open in Online-Editor
\documentclass[a4paper,10pt,landscape]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[left=1cm,right=1cm,top=2cm,bottom=1.25cm]{geometry}

\usepackage{lmodern}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}

\usepackage{ragged2e,array}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\RaggedRight}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe
\newcolumntype{C}[1]{>{\Centering}p{#1}} % Neue Tabellenspalte: linksbündig mit Breitenangabe

\begin{document}

\begin{tabularx}{\textwidth}{|L{5cm}|L{5cm}|L{5cm}|X|}
\hline
\multicolumn{1}{|C{5cm}|}{Text in der 1. Zeile soll zentriert sein} & 
\multicolumn{1}{C{5cm}|}{!!!} & 
\multicolumn{1}{C{5cm}|}{Text in der 1. Zeile soll zentriert sein} &
\multicolumn{1}{>{\Centering}X|}{!!!} \\\hline
Dieser Text & und alle weiteren Zeilen & sollen & linksbündig sein \\ \hline
multicolumn zur zentrierten & Ausrichtung ist leider & keine Lösung & da die definierte Breite der L-Spalte zestört wird \\ \hline
\end{tabularx}

\end{document}

Übrigens braucht man bei \RaggedRight und \Centering kein \arraybackslash. Außerdem sei wieder einmal darauf hingewiesen, das vertikale Linien in Tabellen den Lesefluss stören und deshalb ungünstig sind. Siehe auch die Anleitung zu booktabs.

Permanenter link

beantwortet 14 Apr '16, 16:54

saputello's gravatar image

saputello
20.1k33257

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×193
×57

Frage gestellt: 14 Apr '16, 06:13

Frage wurde angeschaut: 3,746 Mal

Zuletzt aktualisiert: 15 Apr '16, 04:12