tabularx 环境中不同列的文本垂直对齐方式不同

tabularx 环境中不同列的文本垂直对齐方式不同

我之前问过一个问题,但是它被标记为重复并被关闭了。不幸的是,提供的解决方案没有解决问题,所以我重新发布了它。

我正在使用 tabularx 环境,在 MWE 中我有三列。第一列包含短文本,第二列包含长文本,第三列再次包含短文本。

\documentclass{article}    
\usepackage{tabularx}

\begin{document}

\begin{tabularx}{6cm}{|p{2cm}|b{2cm}|p{2cm}|} 
short 1 & long text spanning more than one row & short 2 \\
\end{tabularx}

\end{document}

正如预期的那样,结果是和都short 1short 2底部对齐。

在此处输入图片描述

如果我将中间列的设置从 更改b{2cm}p{cm},则正如预期的那样,short 1short2 都会对齐到顶部。

我想使其short 1与顶部对齐和short 2与底部对齐。我该如何实现?

提前致谢。

建议的解决方案无效:

根据@NBur 的建议,他指出这个帖子,我实施了以下变更:

\documentclass{article}    
\usepackage{tabularx}

\newcolumntype{C}{b{2cm}<{\vfill}}

\begin{document}


\begin{tabularx}{6cm}{|C|b{2cm}|p{2cm}|} 
short 1 & long text spanning more than one row & short 2 \\
\end{tabularx}

\end{document}

不幸的是,此代码仅显示一行文本,而不是一直显示到单元格的顶部,因此它不起作用。

在此处输入图片描述

还有其他建议吗?

答案1

tblr环境的替代解决方案tabularray包、使用headfootalignmnet 类型:

\documentclass{article}    

\usepackage{tabularray}

\begin{document}

\begin{tblr}{|h{2cm}|m{2cm}|f{2cm}|} 
short 1 & long text spanning more than one row & short 2 \\
\end{tblr}

\end{document}

在此处输入图片描述

相关内容