使用 \cellspacetoplimit 和 \cellspacebottomlimit 时,\multirow 单元格未垂直居中

使用 \cellspacetoplimit 和 \cellspacebottomlimit 时,\multirow 单元格未垂直居中

普通单元格未垂直居中。在此处输入图片描述

如果没有\setlength\cellspacetoplimit{5pt}\setlength\cellspacebottomlimit{5pt},则它居中。

在此处输入图片描述

但我确实想要增加行间距。我可以通过编写\multirow{2}{*}[-2pt]{...}并尝试不同的修复参数来手动调整它。如何在不对修复参数进行硬编码的情况下做到这一点?

\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{5pt}

...

\begin{tabular}{Sl Sl} \hline
\multirow{2}{*}{Common cell}
                                  & first cell \\ \cline{2-2}
                                  & second cell\\ \hline
\end{tabular}

答案1

我建议另一种方法:使用 booktabs,您将获得具有一些垂直填充(\aboverulesep\belowrulesep)的水平规则,这会导致布局与 大致相同cellspace,并且线宽可变。还需要进行更正,但它是内在的(-\aboverulesep),并且可以将其合并到用户命令中。当然,对于超过 2 行的多行,它可能会有所不同。

\documentclass{article}
\usepackage{cellspace, multirow, booktabs}
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{5pt}

\begin{document}

\begin{tabular}{Sl Sl} \hline
\multirow{2}{*}[-0.3ex]{Common cell}
                                  & first cell \\ \cline{2-2}
                                  & second cell\\ \hline
\end{tabular}
\vskip1cm
\begin{tabular}{ll} \toprule
\multirow{2}{*}[-\aboverulesep]{Common cell}
                                  & first cell \\
                                  \cmidrule{2-2}
                                  & second cell\\ \bottomrule
\end{tabular}

\end{document}

在此处输入图片描述

相关内容