答案1
列表自然会在元素之间以及列表的开头和结尾插入间距。因此,第一个 上方\item
、每个连续 之间\item
以及最后一个 之后的间距可能不同\item
。在您的示例中,最好通过nosep
提供的选项删除列表插入的所有间距enumitem
:
\documentclass{article}
\usepackage{enumitem,tabularx}
\begin{document}
\begin{enumerate}[nosep]
\begin{tabular}{ *{6}{p{25mm}} }
\item c) & \item c) & \item c) & \item a) & \item d) & \item b)
\end{tabular}
\end{enumerate}
\noindent
\setcounter{enumi}{0}%
\begin{tabularx}{\textwidth}{ *{6}{>{\refstepcounter{enumi}\theenumi.~\ignorespaces}X} }
c) & c) & c) & a) & d) & b)
\end{tabularx}
\end{document}
最后提出了另一个选项,建议你使用另一种方式在表格中自动枚举。具体来说,我使用了tabularx
为确保表格宽度不超过\textwidth
,而\refstepcounter{enumi}\theenumi.~
在每个单元格的开头插入。enumi
是与根级别枚举相关的计数器,因此我在这里重复使用它。
前一种方法有些重复,因为和都\item
用于&
分隔项目,而后一种方法会掩盖您正在构建列表的事实。因此,也许两者都有其(缺点)优势。
另一种方法,也许在这种情况下更合适,可能是使用inline
列表;自enumitem
V3.0 以来支持此功能:
\documentclass{article}
\usepackage[inline]{enumitem}
\begin{document}
\begin{enumerate*}[itemjoin=\hfill]
\item c) \item c) \item c) \item a) \item d) \item b)
\end{enumerate*}
\end{document}
您可以指定项目在enumerate*
特定内联枚举环境中的连接方式。我曾经将\hfill
内容拉伸到文本块宽度。