从以下文档开始:
\documentclass{scrartcl}
\usepackage[table]{xcolor}
\begin{document}
\begin{tabular}{|r|r|}
\rowcolor{yellow} \hline
Head 1 & Head 2 \\
\hline
15/2015 & 1 \\
16/2015 & 2 \\
17/2015 & 3 \\
18/2015 & 4 \\
\hline
\end{tabular}
\captionof{table}{cap A}
\end{document}
我得到一个带有黄色标题的表格:
现在我想在右侧放置一个类似的表格。因此,我将两个表格放入一个小页面中,并将另一个表格放在周围:
\documentclass{scrartcl}
\usepackage[table]{xcolor}
\begin{document}
\begin{tabular}{c|c}
\begin{minipage}{.45\textwidth}
\centering
\begin{tabular}{|r|r|}
\rowcolor{yellow} \hline
Head 1 & Head 2 \\
\hline
15/2015 & 1 \\
16/2015 & 2 \\
17/2015 & 3 \\
18/2015 & 4 \\
\hline
\end{tabular}
\captionof{table}{cap A}
\end{minipage}
&
\begin{minipage}{.45\textwidth}
\centering
\begin{tabular}{|r|r|}
\rowcolor{yellow} \hline
Head A & Head B \\
\hline
15/2015 & A \\
18/2015 & B \\
\hline
\end{tabular}
\captionof{table}{cap B}
\end{minipage}
\end{tabular}
\end{document}
两个表格并列。
但现在整个表格都是黄色的。我该如何改变这种情况?为什么会出现这种情况?
当省略 minipage 并使用 tabularx 时,我得到相同的结果:
\documentclass{scrartcl}
\usepackage[table]{xcolor}
\usepackage{tabularx}
\begin{document}
\begin{tabularx}{\textwidth}{@{}X@{}X@{}}
\begin{tabular}[t]{|r|r|}
\rowcolor{yellow} \hline
Head 1 & Head 2 \\
\hline
15/2015 & 1 \\
16/2015 & 2 \\
17/2015 & 3 \\
18/2015 & 4 \\
\hline
\end{tabular}
&
\begin{tabular}[t]{|r|r|}
\rowcolor{yellow} \hline
Head A & Head B \\
\hline
15/2015 & A \\
18/2015 & B \\
\hline
\end{tabular}
\end{tabularx}
\end{document}
答案1
外部表格在这里没有做任何有用的事情,但也许这只是小例子的产物。
表格单元格形成组,因此跨行工作\rowcolor
会进行全局分配,这意味着嵌套使用并不总是按您预期的方式工作,最简单的方法是在安全框中执行嵌套表格,然后将其复制进去。
\documentclass{scrartcl}
\usepackage[table]{xcolor}
\begin{document}
\sbox{0}{\begin{tabular}{|r|r|} \hline
\rowcolor{yellow}
Head 1 & Head 2 \\
\hline
15/2015 & 1 \\
16/2015 & 2 \\
17/2015 & 3 \\
18/2015 & 4 \\
\hline
\end{tabular}}
\sbox{2}{\begin{tabular}{|r|r|}\hline
\rowcolor{yellow}
Head A & Head B \\
\hline
15/2015 & A \\
18/2015 & B \\
\hline
\end{tabular}}
\begin{tabular}{c|c}
\begin{minipage}{.45\textwidth}
\centering
\usebox{0}
\captionof{table}{cap A}
\end{minipage}
&
\begin{minipage}{.45\textwidth}
\centering
\usebox{2}
\captionof{table}{cap B}
\end{minipage}
\end{tabular}
\end{document}