PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zeilen in Tabellen werden mit \rowcolor überdeckt



Ez:ekiel
25-02-2011, 11:44
Hi Leute,
ich habe das Problem, dass Zelllinien und sogar eine vertikal dargestellte Spalte von grau eingefärbten Zeilen überdeckt werden.
Ich würde gerne die erste Spalte weiss lassen und ab der 2. eine grau/weiss-Einteilung verwenden. Leider überdeckt die Hintergundfarbe aber sogar den Text.

Hier das Minimalbeispiel:


\documentclass[11pt, a4paper]{article}

\usepackage[dvips]{color}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage[ansinew]{inputenc}
\usepackage{longtable}
\usepackage[dvips]{rotating}
\usepackage{colortbl}

%-----------------------------------------------------------------

\begin{document}


\definecolor{hellgrau}{gray}{0.85}


\begin{center}
\begin{longtable}{c l|c|c|c|}
& \textbf{Funktionalität} & \begin{sideways} Stille \end{sideways} & \begin{sideways} Suzuki \end{sideways} & \begin{sideways} Negishi (Pd) \end{sideways} \\
\hline
\rowcolor{hellgrau} \multirow{6}{*}{\cellcolor{white} \begin{sideways} \textbf{O-haltig} \end{sideways}} & 1°-Alkohol & -- & ($\boldsymbol{\times}$) & ($\boldsymbol{\times}$) \\
& 2°-Alkohol & $\surd$ & ($\boldsymbol{\times}$) & ($\boldsymbol{\times}$) \\
\rowcolor{hellgrau} \cellcolor{white} & 3°-Alkohol & $\surd$ & ($\surd$) & ($\boldsymbol{\times}$) \\
& Phenol & $\surd$ & $\boldsymbol{\times}$ & ($\boldsymbol{\times}$) \\
\rowcolor{hellgrau} \cellcolor{white} & Ether & $\surd$ & $\surd$ & $\surd$ \\
& Silylether & ($\surd$)$^a$ & $\surd$ & $\surd$ \\
\hline
\caption{Tabellenunterschrift.} \label{03_Tab3}
\end{longtable}
\end{center}

\end{document}


Da die große Tabelle bei mir auch ein longtable-Environment ist, wollte ich das, obwohl hier unnötig, mit einbeziehen.

Hat jemand dazu eine Idee?

Ez:ekiel
25-02-2011, 15:43
Ok, das Problem mit der überdeckten Schrift habe ich gelöst, das lässt sich mit multicolumn verhindern.



\documentclass[11pt, a4paper]{article}

\usepackage[dvips]{color}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage[ansinew]{inputenc}
\usepackage{longtable}
\usepackage[dvips]{rotating}
\usepackage{colortbl}

%-----------------------------------------------------------------

\begin{document}


\definecolor{hellgrau}{gray}{0.85}


\begin{center}
\begin{longtable}{c l|c|c|c|}
& \textbf{Funktionalität} & \begin{sideways} Stille \end{sideways} & \begin{sideways} Suzuki \end{sideways} & \begin{sideways} Negishi (Pd) \end{sideways} \\
\hline
\rowcolor{hellgrau} \multirow{6}{*}{\cellcolor{white} \begin{sideways} \textbf{O-haltig} \end{sideways}} & 1°-Alkohol & -- & ($\boldsymbol{\times}$) & ($\boldsymbol{\times}$) \\
& 2°-Alkohol & $\surd$ & ($\boldsymbol{\times}$) & ($\boldsymbol{\times}$) \\
\rowcolor{hellgrau} \multicolumn{1}{c}{} & 3°-Alkohol & $\surd$ & ($\surd$) & ($\boldsymbol{\times}$) \\
& Phenol & $\surd$ & $\boldsymbol{\times}$ & ($\boldsymbol{\times}$) \\
\rowcolor{hellgrau} \multicolumn{1}{c}{} & Ether & $\surd$ & $\surd$ & $\surd$ \\
& Silylether & ($\surd$)$^a$ & $\surd$ & $\surd$ \\
\hline
\caption{Tabellenunterschrift.} \label{03_Tab3}
\end{longtable}
\end{center}


\end{document}


Bleibt nur noch das Problem mit den verdeckten horizontalen Linien. Ich könnte natürlich jede Zelle als \multicolumn{1}{c}{\cellcolor{hellgrau} blablabla} definieren, wäre aber bei meiner echten Tabelle (10x22 Felder) einfach nervig und aufwendig.
Evtl. jemand eine Alternatividee?

rstuby
25-02-2011, 17:15
Komisch, bei mir überdeckt das Graue gar nichts in der Tabelle (bei deinem ersten Beispiel), wohl aber das Weiß bei den weiß eingefärbten Zellen in der ersten Spalte.

Ez:ekiel
27-02-2011, 16:00
Die vertikalen Linien werden bei mir in manchen Zeilen von dem grauen Hintergrund überdeckt. Das Problem in der ersten Spalte (weisser Hintergrund überdeckt den Text) hatte ich ja schon per multicolumn-Befehl gelöst (siehe zweiter Beitrag). Da ich aber keine Lust mehr habe, weiterzusuchen, habe ich die vertikalen Striche entfernt. Irgendwann ist auch mal gut mit der Form und man sollte sich weiter auf den Inhalt konzentrieren können...