在表格内添加垂直空间

在表格内添加垂直空间

我需要为标题下方的行添加一些额外的顶部填充:

\documentclass{article}
\usepackage[a5paper]{geometry}
\usepackage{xcolor, booktabs, tabularx, colortbl}

\begin{document}

\noindent\begin{tabularx}{\columnwidth}{|X X X|}
\rowcolor{lightgray}
header & header & header \\
\addlinespace
test   & test   & test   \\
test   & test   & test   \\
test   & test   & test  \\
\hline
\end{tabularx}

\end{document}

输出

在此处输入图片描述

我有垂直空间,但外边框坏了。我还有什么其他选择?

答案1

我认为您想要一个印刷支柱,即具有深度和高度但没有宽度的物体,这使得它不可见。

\rule显然,您可以自由地改变宏所依据的两个参数\TBstrut以满足您的需要。

最后一条评论:请认真考虑完全省略垂直规则。相信我,它们不会被遗漏。

在此处输入图片描述

附录:如果您不想“看到”标题行边缘的黑线,我建议您\arrayrulecolor{lightgray}在该行的开始处和\arrayrulecolor{black}下一行(即第一个数据行)的开始处发出指令。

\documentclass{article}

\usepackage[a5paper]{geometry}
\usepackage[table]{xcolor}
\usepackage{tabularx}

\newcommand\TBstrut{\rule[-0.7ex]{0pt}{3.2ex}} % "top-and-bottom" strut

\begin{document}
\noindent
\begin{tabularx}{\columnwidth}{|X X X|}
\rowcolor{lightgray}
header & header & header\TBstrut \\
test   & test   & test   \\
test   & test   & test   \\
test   & test   & test  \\
\hline
\end{tabularx}
\end{document}

答案2

{NiceTabular}这是的解决方案nicematrix。输出将在所有 PDF 查看器中完美呈现。

\documentclass{article}
\usepackage[a5paper]{geometry}
\usepackage{xcolor}
\usepackage{nicematrix}

\begin{document}
\noindent
\begin{NiceTabular}[width=\columnwidth,colortbl-like]{|X X X|}
\rowcolor{lightgray}
header & header & header \\
\RowStyle[cell-space-top-limit=3pt]{}
test   & test   & test   \\
test   & test   & test   \\
test   & test   & test  \\
\Hline
\end{NiceTabular}
\end{document}

您需要多次编译(因为nicematrix在后台使用 PGF/Tikz 节点)。

上述代码的输出

答案3

tabularray包装:

\documentclass{article}
\usepackage[a5paper]{geometry}
\usepackage{xcolor}
\usepackage{tabularray}

\begin{document}

\noindent\begin{tblr}{colspec = {|X X X|},
                      row{1}  = {bg=lightgray},
                      rowsep  = 1pt,
                      row{2}  = {abovesep=7pt}, 
                      }
header & header & header    \\
test   & test   & test      \\
test   & test   & test      \\
test   & test   & test      \\
    \hline
\end{tblr}

\end{document}

在此处输入图片描述

相关内容