这个表的内容该如何对齐?

这个表的内容该如何对齐?

我正在努力对齐这个表格的内容。我希望第一列的每个单元格的内容垂直居中,或者至少删除其他两列顶部的空白。我尝试使用该array软件包,但没有成功。有人可以帮忙吗?

当然,这里有一个 MWE:

\documentclass[11pt]{book}
\usepackage{array}
\usepackage{tabularx}
\usepackage{makecell}
\usepackage{enumitem}

\newlist{tablelist}{itemize}{3}
\setlist[tablelist,1]{label={--},leftmargin=1em, nosep}

\begin{document}
\begin{table}[!ht]
    \centering 
    \begin{tabular}{m{8em} p{14em} p{14em} }
    \hline
     \textbf{Col A} & \textbf{Col B} & \textbf{Col C} \\
    \hline \hline
     \textbf{\makecell[l]{Extremely \\ long title}} &
    \begin{tablelist}
        \item Item 1
        \item Item 2
        \item Item 3
        \item Item 4
        \item Item 5
    \end{tablelist} &
    \begin{tablelist}
        \item Item 1
        \item Item 2
    \end{tablelist} \\
        \hline
    \end{tabular}
    \\
\end{table}

\end{document}

其结果是: 在此处输入图片描述

我想指出的是,这是我需要编码的表格的一行,我不喜欢使用multirow。此外,我利用了,\makecell因为我只想控制 Col A 中每个单元格的文本何时转到下一行。

答案1

欢迎来到 TeX.SE!

如果我正确理解了你的意思,那么你正在追求这样的事情:

在此处输入图片描述

tabularray使用带有库booktabs(用于表格规则)和varwidth(用于列表间距)的包很容易获得此表格形式:


\documentclass[11pt]{book}
\usepackage{enumitem}
\newlist{tablelist}{itemize}{1}
\setlist[tablelist,1]{nosep,
    leftmargin=*,
    label=--,
    before=\begin{minipage}[t]{\hsize}\raggedright,
    after =\end{minipage}
                    }
\usepackage{tabularray}
\UseTblrLibrary{booktabs, varwidth}

\begin{document}
\begin{table}[ht]
    \begin{tblr}{colspec = {Q[l, m, wd=8em, font=\bfseries] 
                            X[l,h]  X[l,h]},
                row{1} = {font=\bfseries},
                measure=vbox,
                }
    \toprule
Col A   &   Col B   &   Col C       \\
    \midrule
{Extremely \\ long title}
    &   \begin{tablelist}
    \item Item 1
    \item Item 2
    \item Item 3
    \item Item 4
    \item Item 5
        \end{tablelist} &   \begin{tablelist}
                        \item Item 1
                        \item Item 2
                            \end{tablelist} \\
    \bottomrule
    \end{tblr}
\end{table}
\end{document}

答案2

具有nicematrix(≥ 2023/02/18 的 6.14):

\documentclass[11pt]{book}

\usepackage{nicematrix}
\usepackage{enumitem}
\newlist{tablelist}{itemize}{1}
\setlist[tablelist,1]{leftmargin=*,label=--,nosep,after = \vspace{-1em}}
\usepackage{booktabs}

\begin{document}


\begin{table}[ht]
\begin{NiceTabular}{>{\bfseries}w{l}{8em}X[l]X[l]}
\toprule
\RowStyle[bold]{}
Col A   &   Col B   &   Col C    \\
\midrule
\Block[v-center]{}{Extremely long~title}
& 
\begin{tablelist}
    \item Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 
    \item Item 2
    \item Item 3
    \item Item 4
    \item Item 5
\end{tablelist}
&
\begin{tablelist}
    \item Item 1
    \item Item 2
\end{tablelist} \\
\Block[v-center]{}{Extremely long~title}
& 
\begin{tablelist}
    \item Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 Item 1 
    \item Item 2
    \item Item 3
    \item Item 4
    \item Item 5
\end{tablelist}
&
\begin{tablelist}
    \item Item 1
    \item Item 2
\end{tablelist} \\
\bottomrule
\end{NiceTabular} 
\end{table}

\end{document}

与往常一样nicematrix,您需要进行多次编译。

上述代码的输出

相关内容