![在非 p 表格单元格中提升迷你框失败](https://linux22.com/image/250081/%E5%9C%A8%E9%9D%9E%20p%20%E8%A1%A8%E6%A0%BC%E5%8D%95%E5%85%83%E6%A0%BC%E4%B8%AD%E6%8F%90%E5%8D%87%E8%BF%B7%E4%BD%A0%E6%A1%86%E5%A4%B1%E8%B4%A5.png)
当我尝试回答tabular
相关问题时,我发现以下行为令我感到惊讶:
我试图将左对齐列中的多行文本与上方的空单元格重叠。multirow
在本例中,这旨在替代包。我尝试了\raisebox{<amount>}[0pt]{\begin{minipage}[t]{<width>} .. \end{minipage}}
(或),但当使用、或列类型时,这根本\begin{adjustbox}{minipage=[t]{<width>},raise={<amount>}{0pt}
不会引发。它适用于。minipage
l
c
r
p{<width>}
MWE 是:
\documentclass{article}
\usepackage{blindtext}
\begin{document}
\begin{tabular}{lp{6cm}}
text & .\raisebox{1ex}{Text} \\
text &
.\raisebox{2\baselineskip}{\begin{minipage}[t]{5cm}% baseline is raised
\blindtext
\end{minipage}} \\
\end{tabular}
\clearpage
\begin{tabular}{ll}% same for c and r
text & .\raisebox{1ex}{Text} \\
text &
.\raisebox{2\baselineskip}{\begin{minipage}[t]{5cm}% baseline is not raised!
\blindtext
\end{minipage}} \\
\end{tabular}
\end{document}
‘p’ 类型的结果:
类型为 ‘l’ 的结果:
这种行为让我无法理解。通常,在其他水平模式下始终可以使用minipage
。我猜可能是重新定义了一些内部宏,从而干扰了这一点?有人能解释为什么会发生这种情况以及如何使\raisebox
非列类型也能正常工作p
吗?
答案1
你的例子太复杂了。问题是你\baselineskip
在 l 列中将其设置为零:
\documentclass{article}
\begin{document}
\begin{tabular}{ll}% same for c and r
text & .\raisebox{1ex}{Text} \\
text &
.\the\baselineskip. \raisebox{\baselineskip}{blub}\raisebox{1cm}{BLA}\\
\end{tabular}
\end{document}