我知道它和这个很相似问题,这个等等……但是对于 3 列,我无法应用解决方案。我希望前两列(实际上我有很多文本,长度不同)顶部对齐,而最后一列垂直居中。
\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage{tabularx}
\usepackage{lipsum}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{ | X | X | c | }
\hline
bla\newline bla \newline & bla\newline bla \newline & top\\
\hline
bla\newline bla \newline bla \newline & \noindent\parbox[c]{\hsize}{ bla\newline bla \newline } & center\\
\hline
bla\newline bla \newline & \noindent\parbox[b]{\hsize}{bla\newline bla \newline } & bottom\\
\hline
\end{tabularx}
\end{document}
答案1
您可以通过multirow
反复试验来做到这一点,计算当前行单元格中的最大行数。我添加了makecell
包,以便使用更简单的语法multirowcell
:
\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage{tabularx}
\usepackage{makecell, multirow}
\usepackage{lipsum}
\begin{document}
\noindent
\begin{tabularx}{\textwidth}{ | X | X | c | }
\hline
bla\newline bla \newline & bla\newline bla \newline &\multirowcell{3}{top}\\
\hline
bla\newline bla \newline bla \newline & bla\newline bla \newline & \multirowcell{4}{center}\\
\hline
bla\newline bla \newline & bla\newline bla \newline & \multirowcell{3}{bottom}\\
\hline
\end{tabularx}
\end{document}