我有以下生成表的代码
\begin{tabular}{|c|c|c|c|} \hline
\multicolumn{4}{|c|}{A} \\ \hline
\multicolumn{2}{|c}{B} & \multicolumn{2}{|c|}{C} \\ \hline
D & E & F & G \\ \hline
& & & \\ \hline
\end{tabular}
除了列对齐存在非常小的偏移(见下图)之外,它运行良好。我不明白为什么会发生这种情况。有人知道解决办法吗?
编辑:一个简单的修复:将分隔符从 C 标签的开头移动到 B 标签的结尾。
\begin{tabular}{|c|c|c|c|} \hline
\multicolumn{4}{|c|}{A} \\ \hline
\multicolumn{2}{|c|}{B} & \multicolumn{2}{c|}{C} \\ \hline
D & E & F & G \\ \hline
& & & \\ \hline
\end{tabular}
答案1
我找到了自己问题的答案。看来(正如 Werner 指出的那样),由于\multicolumn
允许每个单元格有独立的垂直规则,分隔符的位置|
将改变整个表格的外观,如上图所示。
解决办法是确保对齐字符的位置一致。稍微修改一下原来的代码,改为
\begin{tabular}{|c|c|c|c|} \hline
\multicolumn{4}{|c|}{A} \\ \hline
\multicolumn{2}{|c|}{B} & \multicolumn{2}{c|}{C} \\ \hline
D & E & F & G \\ \hline
& & & \\ \hline
\end{tabular}
产生以下(对齐)表格: