将列表与文本末尾对齐

将列表与文本末尾对齐

我想创建类似的东西:

例子

我可以在其中定义一个移动并对齐到一些介绍性文字末尾的列表。

虽然我可以为特定文本硬编码解决方案,但如何为变量介绍性文本和列表项实现这一点?

答案1

您可以使用enumitemcalc包来创建某种半自动化解决方案。

\documentclass[12pt,a4paper]{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage{enumitem}
\usepackage{calc}

\begin{document}
    \begin{description}[labelwidth=\widthof{Intro text:}+.5em,%
                        leftmargin=\dimexpr\labelwidth+\labelsep\relax]
        \item[Intro text:]
        \begin{itemize}
            \item item 1
            \item item 2
            \item item 3
            \item etc.
        \end{itemize}
    \end{description}
\end{document}

在此处输入图片描述

编辑:

另一个解决方案可能是这样的:

\documentclass{article}

\usepackage{scrextend}
\addtokomafont{labelinglabel}{\sffamily\bfseries}

\begin{document}
    \begin{labeling}{Intro text:}
        \item[Intro text:] \begin{itemize}
            \item item 1
            \item item 2
            \item item 3
            \item etc.
        \end{itemize}
    \end{labeling}
\end{document}

但您还必须指定最长的标签。

答案2

另一个解决方案是将列表包装在 中minipage。这会增加额外的间距,您可以使用enumitem包重置它:

\documentclass{article}
\usepackage{enumitem}
\begin{document}
Intro text:
\begin{minipage}[t]{0.8\textwidth}
    \begin{itemize}[leftmargin=*, label={--}]
    \item item 1
    \item item 2
    \item item 3
    \item etc.
    \end{itemize}
\end{minipage}
\end{document}

在此处输入图片描述

相关内容