多行列中的文本上方出现颜色

多行列中的文本上方出现颜色

我有一张带有 2 个多行单元格的简单表格。但是,当我应用背景色时,它会覆盖多行单元格的下部并切过文本输入的中间,这显然不是我想要的。有人能告诉我我这里做错了什么吗?还请注意,我使用 \vspace 将文本输入在多行单元格中向上移动 1 毫米,因为它没有居中。它更靠近下边框。可能有更好的方法可以做到这一点。下面是我的代码和我得到的输出表:在此处输入图片描述

\documentclass[12pt]{article}

\usepackage{latexsym,amssymb}
\usepackage{colortbl}
\usepackage[margin=1in,headsep=2.5cm]{geometry}
\usepackage{multirow}

\definecolor{mycolor}{rgb}{0.92,0.95,0.86}
\arrayrulecolor{white}

\setlength{\parindent}{0pt}
\setlength{\doublerulesep}{2pt}
\setlength{\extrarowheight}{3pt}

\begin{document}

\begin{tabular}
{ >{\columncolor{mycolor}}b{79pt}
>{\columncolor{mycolor}}b{145pt}|| 
>{\columncolor{mycolor}}b{79pt}
>{\columncolor{mycolor}}b{145pt} }
\multicolumn{2}{>{\cellcolor{mycolor}}l||}{\textbf{STUDENT DATA}}& 
\multirow{2}{*}{{\vspace{-1mm}\textbf{Name:}}} & \multirow{2}{*}{\vspace{-1mm}MyName}\\
\textbf{E-mail:} & [email protected] &  & \\
\hline \hline
\textbf{Date:} & 21.3.2011 & \textbf{Student ID:} & 3836127\\
\end{tabular}

\end{document}  

答案1

这是因为文本排版后,下方单元格\multirow会被填充。要解决这个问题,您需要将文本放在下方单元格中并将其提升,例如使用\raisebox

\documentclass[12pt]{article}

\usepackage{latexsym,amssymb}
\usepackage{colortbl}
\usepackage[margin=1in,headsep=2.5cm]{geometry}
\usepackage{multirow}

\definecolor{mycolor}{rgb}{0.92,0.95,0.86}
\arrayrulecolor{white}

\setlength{\parindent}{0pt}
\setlength{\doublerulesep}{2pt}
\setlength{\extrarowheight}{3pt}

\begin{document}

\begin{tabular}
{ >{\columncolor{mycolor}}b{79pt}
>{\columncolor{mycolor}}b{145pt}|| 
>{\columncolor{mycolor}}b{79pt}
>{\columncolor{mycolor}}b{145pt} }
\multicolumn{2}{>{\cellcolor{mycolor}}l||}{\textbf{STUDENT DATA}}&&\\
\textbf{E-mail:} & [email protected] & \raisebox{1.6ex}[1.6ex]{\textbf{Name:}} & \raisebox{1.6ex}[1.6ex]{MyName}\\
\hline \hline
\textbf{Date:} & 21.3.2011 & \textbf{Student ID:} & 3836127\\
\end{tabular}

\end{document} 

还请确保提供最小示例。此处一半的代码无需演示该问题,因此查找问题需要更长的时间。

相关内容