如何定义具有自定义标签的多行项的第二行的缩进?

如何定义具有自定义标签的多行项的第二行的缩进?

我有一个多列列表,垂直空间有点受限,因此我使用了leftmargin=*的属性itemize来消除自定义标签和实际文本之间的一些空白。但由于某种原因,换行后缩进是错误的(参见第一列)。如果我省略leftmargin,则缩进是正确的,但标签和文本之间的空间太大。我尝试按照文档中所述手动设置所有内容,但它从不适用于第二行。

我尽量避免强制换行和使用空项item[]。如何解决这个问题?空格较少但缩进正确?

我的最小例子:

\documentclass{article}
\usepackage{enumitem}

\begin{document}

\noindent texttexttexttext...
\hfill \\

\noindent\begin{minipage}[t]{0.45\textwidth}
{\centering \subsection*{Header 1}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\raggedright
\item[\textbf{foo}] thisisaverylongtext, which doesn't fit on one line
\item[\textbf{foo}] two
\item[\textbf{foo}] three
\item[\textbf{foo}] four
\end{itemize}
\end{minipage}
\kern.1\textwidth
\begin{minipage}[t]{0.45\textwidth}
{\centering \subsection*{Header 2}}
\begin{itemize}[align=left,labelsep=1ex]
\raggedright
\item[\textbf{foo}] thisisaverylongtext, which doesn't fit on one line
\item[\textbf{foo}] two.one \\ two.two
\item[\textbf{foo}] three
\item[\textbf{foo}] four
\end{itemize}
\end{minipage}

\end{document}

在此处输入图片描述

答案1

我想这就是你想要的:

\documentclass{article}
\usepackage{enumitem}
\usepackage{showframe} % just for the example

\begin{document}

\noindent\begin{minipage}[t]{0.45\textwidth}
\subsection*{Header 1}
\begin{itemize}[
  align=left,
  leftmargin=2em,
  itemindent=0pt,
  labelsep=0pt,
  labelwidth=2em
]
\raggedright
\item[\textbf{foo}] thisisaverylongtext, which doesn't fit on one line
\item[\textbf{foo}] two.one \\ two.two
\item[\textbf{foo}] three
\item[\textbf{foo}] four
\end{itemize}
\end{minipage}\hfill
\begin{minipage}[t]{0.45\textwidth}
\subsection*{Header 2}
\begin{itemize}[align=left,labelsep=1ex]
\raggedright
\item[\textbf{foo}] thisisaverylongtext, which doesn't fit on one line
\item[\textbf{foo}] two.one \\ two.two
\item[\textbf{foo}] three
\item[\textbf{foo}] four
\end{itemize}
\end{minipage}

\end{document}

在此处输入图片描述

使用您认为合适的任意长度来代替2em

相关内容