列表中不需要居中

列表中不需要居中

当我将center环境放在列表中某项的开头时,该项本身会缩进。我该如何修复此问题?

梅威瑟:

\documentclass{article}

\begin{document}

\emph{\large Enumerate}:
\begin{enumerate}
\item Foo.
\item
  \begin{center}
    Bar.
  \end{center}
\item Baz.
  \begin{center}
    Quux.
  \end{center}
\end{enumerate}

\emph{\large Itemize}:
\begin{itemize}
\item Foo.
\item
  \begin{center}
    Bar.
  \end{center}
\item Baz.
  \begin{center}
    Quux.
  \end{center}
\end{itemize}
\end{document}

enter image description here

答案1

使用\hfil(参见逐项列举下的栏目)

\documentclass{article}

\begin{document}

\emph{\large Enumerate}:
\begin{enumerate}
\item Foo.
\item
  \begin{center}
    Bar.
  \end{center}
\item Baz.
  \begin{center}
    Quux.
  \end{center}
\end{enumerate}

\emph{\large Itemize}:
\begin{itemize}
\item Foo.
\item
{\hfil  Bar.}
\item Baz.
  \begin{center}
    Quux.
  \end{center}
\end{itemize}
\end{document}

答案2

当你将项目放置在宽度为 的框中时\linewidth,你可以更轻松地管理对齐:

enter image description here

\documentclass{article}

\begin{document}

Original:
\begin{enumerate}
  \item Foo.
  \item
    \begin{center}
      Bar.
    \end{center}
  \item Baz.
    \begin{center}
      Quux.
    \end{center}
\end{enumerate}

Updated:
\begin{enumerate}
  \item Foo.
  \item \makebox[\linewidth]{Bar.}
  \item \makebox[0pt][l]{Baz.}%
      \makebox[\linewidth]{Quux.}
\end{enumerate}

\end{document}

默认情况下\makebox[<wd>]{<stuff>}相当于在宽度为的框内\makebox[<wd>][c]{<stuff>}输入。c<stuff><wd>

答案3

JPi 的回答很好,但我想我会添加一个替代解决方案——将其做成一个表格。

我的代码是

\documentclass{article}
\usepackage{graphicx}

\begin{document}

\begin{table}[h]
    \centering
    \resizebox{\columnwidth}{!}{
    \begin{tabular}{l c}
        \textit{Enumerate:} \\
       1. Foo.  &  2. Bar.\\
       \\
        3. Baz. & Quux. \\
        \\
        \textit{Itemize:} \\
        \textbullet Foo. & \textbullet Bar. \\
        \\
        \textbullet Baz. & Quux. \\
    \end{tabular}}
\end{table}

\end{document}

这使

enter image description here

我认为这个解决方案和使用列表一样好。如果您愿意,可以将其从 改为{l c}{l l}这样看起来会更整洁 - 第二列将对齐但仍在中间。

希望这可以帮助!

相关内容