@{} 删除表格标题行的垂直线

@{} 删除表格标题行的垂直线

我想删除文本和表格线之间的水平间距。我使用@{},但它删除了表格第一行的垂直线。有人知道为什么吗?

\documentclass[11pt,onecolumn]{article}
\usepackage{array}
\usepackage{color, colortbl}
\definecolor{mColor1}{rgb}{0.9,0.9,0.9}
\begin{document}
\newcolumntype{N}{@{}>{\columncolor{red}[0pt][0pt]}m{0pt}@{}}
\begin{table}[h!]
\scriptsize
\caption{Summary}
\centering
\begin{tabular}{| c | @{}c | c | N }
\hline
\rowcolor{mColor1}
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} & \\ [0.5cm]
\hline
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} & \\ [0.5cm]
\hline
\end{tabular}
\label{tabSummary}
\end{table}
\end{document} 

在此处输入图片描述

我认为\rowcolor{mColor1}这是导致问题的原因,但我不知道如何解决它!任何帮助都值得感激。谢谢

答案1

将其设置为零然后在需要的地方添加空间会更容易\tabcolsep,这在外列中有一些空间,中间有紧密的空间

在此处输入图片描述

\documentclass[11pt,onecolumn]{article}
\usepackage{array}
\usepackage{color, colortbl}
\definecolor{mColor1}{rgb}{0.9,0.9,0.9}
\begin{document}
\newcolumntype{N}{@{}>{\columncolor{red}[0pt][0pt]}m{0pt}@{}}
\begin{table}[h!]
\setlength\tabcolsep{0pt}
\scriptsize
\caption{Summary}
\centering
\begin{tabular}{| c | c | c | N }
\hline
\rowcolor{mColor1}
\textbf{\ Author(s)\ } & \textbf{App.} & \textbf{\ Algorithm\ } & \\ [0.5cm]
\hline
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} & \\ [0.5cm]
\hline
\end{tabular}
\label{tabSummary}
\end{table}
\end{document} 

答案2

我认为定义一个新的列类型更容易C

\newcolumntype{C}{>{\hspace{-\tabcolsep}}c}

并使用它来代替以c获得您想要的内容,这样您就不必手动指定间距。

平均能量损失

\documentclass[11pt,onecolumn]{article}
\usepackage{array}
\usepackage{color, colortbl}
\definecolor{mColor1}{rgb}{0.9,0.9,0.9}
\begin{document}
\newcolumntype{N}{@{}>{\columncolor{red}[0pt][0pt]}m{0pt}@{}}
\newcolumntype{C}{>{\hspace{-\tabcolsep}}c}
\begin{table}[h!]
\scriptsize
\caption{Summary}
\centering
\begin{tabular}{| c | C | c | N }
\hline
\rowcolor{mColor1}
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} & \\ [0.5cm]
\hline
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} & \\ [0.5cm]
\hline
\end{tabular}
\label{tabSummary}
\end{table}
\end{document} 

输出

在此处输入图片描述

如果您还想删除另一侧的间距,请将其定义为

\newcolumntype{C}{>{\hspace{-\tabcolsep}}c@{}}

你会得到

在此处输入图片描述

答案3

使用{NiceTabular}nicematrix您可以直接获得预期的输出(但您需要多次编译)。

\documentclass[11pt,onecolumn]{article}
\usepackage{nicematrix}
\definecolor{mColor1}{rgb}{0.9,0.9,0.9}

\begin{document}

\begin{table}[h!]
\scriptsize
\caption{Summary}
\centering
\begin{NiceTabular}{| c | @{}c | c |}[color-inside]
\hline
\rowcolor{mColor1}
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} \\[0.5cm]
\hline
\textbf{Author(s)} & \textbf{App.} & \textbf{Algorithm} \\[0.5cm]
\hline
\end{NiceTabular}
\label{tabSummary}
\end{table}

\end{document} 

上述代码的输出

相关内容