在 tcolorbox 中获得正确的缩进

在 tcolorbox 中获得正确的缩进

在具有缩进文本的文档中,我希望 tcolorbox 内的文本具有相同的缩进,包括缺少第一段的缩进。

我关注了这篇文章:https://tex.stackexchange.com/a/492402/91605

虽然它在简单情况下有效,但如果框中的第一个内容是列表,则会插入多余的不需要的空间。MWE 紧随其后。

\documentclass{article}
\usepackage[skins,breakable]{tcolorbox}
\usepackage{enumitem}
\setlist{noitemsep}

\tcbset{
  boxrule=1pt,
  left=.3em, right=.3em, top=.3em, bottom=.3em,
  beforeafter skip balanced=.5\baselineskip plus 2pt,
  before upper={\parindent5mm\noindent},
  rounded corners=all,
  colframe=gray,
  colback=white,
}

\begin{document}

\begin{tcolorbox}
Text in a box.

New paragraph.

\begin{itemize}
\item a
\item list
\end{itemize}
\end{tcolorbox}

\begin{tcolorbox}
    \begin{itemize}
        \item list
        \item in
        \item a
        \item box
    \end{itemize}
\end{tcolorbox}
\end{document}

输出:

在此处输入图片描述

有办法解决这个问题吗?

答案1

这回答了你的问题吗?我在这段代码中的[leftmargin=10pt]第二个 , 后面加上了:\begin{itemize}


\documentclass{article}
\usepackage[skins,breakable]{tcolorbox}
\usepackage{enumitem}
\setlist{noitemsep}

\tcbset{
  boxrule=1pt,
  left=.3em, right=.3em, top=.3em, bottom=.3em,
  beforeafter skip balanced=.5\baselineskip plus 2pt,
  before upper={\parindent5mm\noindent},
  rounded corners=all,
  colframe=gray,
  colback=white,
}

\begin{document}

\begin{tcolorbox}
Text in a box.

New paragraph.
\begin{itemize}
\item a
\item list
\end{itemize}
\end{tcolorbox}

\begin{tcolorbox}
    \begin{itemize}[leftmargin=10pt]
        \item list
        \item in
        \item a
        \item box
    \end{itemize}
\end{tcolorbox}
\end{document}

,它给了我输出: 在此处输入图片描述

“10pt” 是字体大小为 10pt 的单个空格的宽度,这是默认的乳胶字体大小(因为您没有在序言中指定。)如果您还希望列表第一个项目和框顶部之间的多余空间消失,那么您可以添加[topsep=0pt]以下内容: 在此处输入图片描述

相关内容