消除表格中列表末尾的空格

消除表格中列表末尾的空格

我有一个使用已加载和使用列tabular创建的环境,其中的单元格主要包含列表。在带有列表的单元格中,在单元格底部之前(在设置行大小的最大内容的单元格中),列表末尾有大约 1em 的死空间。我试图摆脱这个空间,但无济于事。我使用一个自定义环境,在开头(紧接着)将、 和全部设置为 0pt 。这消除了内部间距,但没有消除端部间距。我也设置了,但无济于事。这是我的定义:arraymitemize*\topsep\parskip\partopsep\begin{itemize}\@noparlisttrueitemize*

\newenvironment{itemize*}{\begin{itemize}%
  \setlength\topsep{0pt}%
  \setlength\itemsep{-2pt}%
  \setlength\parskip{0pt}%
  \setlength\partopsep{0pt}%
  \@noparlisttrue}{\end{itemize}}

我也尝试在表格单元格中设置\topsep\parskip\partopsep之前,但是我\begin{itemize*}仍然有空白处。

\par跟踪和 Phillipe 的评论表明它在列表末尾调用,这导致了空格。在or之前包含\setlength\parskip{0pt}or不会消除空格。\setlength\parskip{-\baselineskip}\begin{itemize*}\end{itemize*}

我怎样才能摆脱它?

答案1

itemize*您可以通过将环境放入 来避免额外的空间\parbox,即使它已经在p单元格中。Aminipage也可以工作。

您也可以将这样的minipage环境插入到 的定义中\itemize*。但是,宽度是必需的。如果宽度是可变的,则可能意味着额外的工作。

如果您需要快速修复:\vspace{-2em}或任何其他合适的负值,直接\end{itemize}在您的定义之后,就会删除底部的空白。

相关内容