如果没有\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}