这枚举项软件包中有一个style=nextline
选项,可用于使description
环境中的标签位于其自己的行上。除非您想嵌套description
,itemize
或enumerate
环境,否则此方法非常有效,此时它会失败并产生:
为了尝试解决这个问题,我尝试过枚举项选项并执行诸如在命令后放置\newline
,,,...之\quad``\hfil
类的操作,但我没有找到任何有效的方法,并且大多数时候这些“修复”会导致项目行和嵌套环境之间出现额外的空白行。\hss
\item[...]
description
嵌套和环境中也发生了同样的事情enumerate
。有人知道如何修复这个问题吗?
这是展示该问题的 MWE。
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{description}[style=nextline]
\item[First item] Some text
\item[Second item] Some text
\item[Third item]\hfill
\begin{itemize}
\item Nested itemise
\item Nested itemise
\end{itemize}
\item[Fourth item] Some text
\end{description}
\end{document}
编辑
一个手动破解方法可以解决这个问题,就是在命令\hfil
后面放置\item[...]
,然后\vskip-6mm
在下一个项目后面添加。这种方法不太优雅,最好使用 提供的工具来找到解决方案enumitem
。以下是破解方法:
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{description}[style=nextline]
\item[First item] Some text
\item[Second item] Some text
\item[Third item]\hfil
\begin{itemize}
\item \vskip-6mm Nested itemise
\item Nested itemise
\end{itemize}
\item[Fourth item] Some text
\end{description}
\end{document}
答案1
这是一个这样的解决方案(我认为):
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{description}[style=nextline]
\item[First item] Some text
\item[Second item] Some text
\item[Third item]%
\begin{itemize}[before=\leavevmode\vspace*{-\dimexpr2\topsep + \baselineskip\relax}]
\item Nested itemise
\item Nested itemise
\end{itemize}
\item[Fourth item] Some text
\end{description}
\end{document}