使用“枚举”时,如何强制“描述”从新行开始?

使用“枚举”时,如何强制“描述”从新行开始?

我想使用description实际描述从新行开始的环境。https://tex.stackexchange.com/a/69525/293290建议,我正在使用enumitem包,并且已经设置了style=nextline。但是当描述是另一个环境时,它不起作用,在我的情况下enumerate

\documentclass{article}
\usepackage{enumitem}

\begin{document}
\begin{description}[style=nextline]
    \item[Offset]
        \begin{enumerate}
            \item First line.
            \item Second line.
            \item Third line.
        \end{enumerate}
\end{description}
\end{document}

渲染的代码片段显示了错误的偏移。

我尝试在中间插入一个空格,但是却产生了一个巨大的空格。

\documentclass{article}
\usepackage{enumitem}

\begin{document}
\begin{description}[style=nextline]
    \item[Offset]~
        \begin{enumerate}
            \item First line.
            \item Second line.
            \item Third line.
        \end{enumerate}
\end{description}
\end{document}

大空间的例子。

我搜索了其他解决方案,并遇到了在带有 enumitem 的描述列表中使用 style=nextline 时,如何强制所有文本继续到下一行?,但这也不能解决我的问题。我该如何解决这个问题?

答案1

获得所需内容的一种方法是简单地在嵌入enumerate列表的开头添加一个小的负垂直空间。我们可以使用before可以在列表开始之前注入代码的键来实现这一点。我还添加了leftmargin=*列表参数,以便编号与未编号的描述项对齐。

\documentclass{article}
\usepackage{enumitem}

\begin{document}
\begin{description}[style=nextline]
    \item[First line] This is the first line.
    \item[Second line]
        \begin{enumerate}[leftmargin=*,before*=\leavevmode\vspace{-1.5\baselineskip}]
            \item First line.
            \item Second line.
            \item Third line.
        \end{enumerate}
\end{description}
\end{document}

代码输出

相关内容