删除行上的空间时 rowcolor 太大

删除行上的空间时 rowcolor 太大

我是 LaTeX 初学者,遇到了一个似乎找不到答案的问题... 我正在创建一个表格(使用,booktabs但我的问题在未使用该包时也会出现),每当我删除表格边缘的空间(使用@{})并尝试同时为各个行着色时,颜色占用的空间比表格更宽。请参阅以下示例:

\usepackage{array}
\usepackage{colortbl}
\usepackage[table,xcdraw]{xcolor}
% [...]


\fbox{\begin{tabular}{@{}ll@{}}
foo & bar\\
\rowcolor[HTML]{BFBFBF} bar & foo
\end{tabular}}

结果如下:

rowcolor 太宽!

提前感谢任何帮助/指点!

答案1

你也可以使用包NiceTabular中的nicematrix选项:

在此处输入图片描述

\documentclass{article}
\usepackage[table,xcdraw]{xcolor}

\definecolor{mygray}{HTML}{BFBFBF}

\usepackage{nicematrix}
\begin{document}


\fbox{\begin{NiceTabular}{@{}ll@{}}[code-before=\rowcolor{mygray}{2}]
foo & bar\\
 bar & foo
\end{NiceTabular}}

\end{document}

答案2

我建议将\fboxsep其设置为 $0$,并保留表格两端的空格,加载cellspace表格顶部和底部的垂直间距:

\documentclass{article}
\usepackage{array}
\usepackage[table,xcdraw]{xcolor}
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{4pt}
% [...]
\begin{document}

{\setlength{\fboxsep}{0pt}
\fbox{%
\begin{tabular}{Sll}
foo & bar\\
\rowcolor[HTML]{BFBFBF} bar & foo
\end{tabular}}
}
\end{document} 

在此处输入图片描述

相关内容