表格单元格中文本的垂直居中对齐

表格单元格中文本的垂直居中对齐

我想知道如何在表格单元格内放置垂直居中的文本。

m 列类型的问题是我实际上正在使用表格型自动检测列宽

\newcolumntype{Y}{>{\small\centering\arraybackslash}X}
\begin{tabularx}{\textwidth}{YYY}
   & Lorem ipsum \newline Lorem ipsum dolor sit amet, consectetur adipisicing & Lorem ipsum \newline Lorem ipsum dolor sit amet, consectetur adipisicing \\
Lorem ipsum Lorem ipsum dolor sit amet, consectetur adipisicing & A & B \\
Lorem ipsum Lorem ipsum dolor sit amet, consectetur adipisicing & C & D \\
\end{tabularx}

我想在 A、B、C、D 文本框中垂直居中

答案1

文档给出了使用小文本列的tabularx明确示例m

 \renewcommand{\tabularxcolumn}[1]{>{\small}m{#1}}

您的列定义已经添加,\small因此您只需让 X 使用 m 而不是 p

\renewcommand{\tabularxcolumn}[1]{m{#1}}

答案2

tabularx您可以使用禁忌包裹:

\documentclass{article} 
\usepackage{tabu}

\begin{document}

\everyrow{\rowfont{\small}}
\noindent\begin{tabu} to\linewidth{X[c,m]X[c,m]X[c,m]}
   & Lorem ipsum\par Lorem ipsum dolor sit amet, consectetur adipisicing & Lorem ipsum \par Lorem ipsum dolor sit amet, consectetur adipisicing \\
Lorem ipsum Lorem ipsum dolor sit amet, consectetur adipisicing & A & B \\
Lorem ipsum Lorem ipsum dolor sit amet, consectetur adipisicing & C & D \\
\end{tabu}

\end{document}

在此处输入图片描述

相关内容