如何消除表格中逐项列出之前的垂直偏移?

如何消除表格中逐项列出之前的垂直偏移?

如同这个先前的问题我的,但这次没有照片。我还发现了这个答案,但该topsep选项似乎没有效果。考虑以下 MWE:

\documentclass[a4paper, 10pt]{scrartcl}

\usepackage[american]{babel}
\usepackage[utf8]{inputenx}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{tabu, booktabs}
\usepackage{enumitem}
\setlist[itemize]{noitemsep, nosep, labelsep*=2em, labelindent=0em}

\begin{document}

\tabulinesep=5pt
\begin{tabu}{@{} >{\bfseries}X[l] X[2.5,l]}
\toprule
Main characters: &
%\vspace{-1.7em}
\begin{itemize}
\item Donald Duck
\item Daisy Duck
\item Huey, Dewey, and Louie
\item Scrooge McDuck
\item Ludwig Von Drake
\end{itemize} \\
\midrule
Relatives: &
%\vspace{-1.7em}
\begin{itemize}[topsep=0pt]
\item Duck family (Disney)
\item Clan McDuck
\end{itemize} \\
\midrule
First edition: & October 9, 1967 \\
\bottomrule
\end{tabu}

\end{document}

这使: tabu 条目化偏移

项目符号与外部文本的水平对齐itemize(“10 月 9 日”)正是我想要的样子(尽管我发现这取决于硬编码labelsep*设置;不太像 TeX...)。但无论有没有topsep=0pt,项目符号都不会在单元格内顶部对齐。插入负数\vspace对我来说似乎很笨拙,一定有更好的方法。

简而言之:如何(轻松)消除垂直偏移?

答案1

最后我在序言中选择了如下的设定:

\setlist[itemize]{leftmargin=*, itemsep=0pt, parsep=2pt, labelsep*=2em,
labelindent=0em, before=\vspace{-\dimexpr\baselineskip +2.6\partopsep}}

虽然并不完美,并且仍然不太像 TeX,但它可以工作。

相关内容