我准备了以下示例:
\documentclass{article}
\usepackage{calc}
\usepackage{multicol}
\usepackage{lipsum}
\begin{document}
\begin{multicols}{2}
\begin{tabular}{l r}
item: & super very long item spanning a lot of space and very long other stuff \\
item: & super very long item spanning a lot of space and very long other stuff \\
\end{tabular}
\lipsum{}
\end{multicols}
\end{document}
但是正如您所看到的,表格与下一列重叠并超出页面范围,并且没有按预期中断。
无需处理小页面,tabular*
似乎tabularx
可以解决这个问题。
答案1
r
不检查列的宽度。当您使用它时,它将适应其内容的宽度,而不会换行或做其他事情。因此,它会与新列重叠,就像与“普通”文档中的边距重叠一样。
使用 fip{.5\linewidth}
或X
( tabularx
) 可以解决这个问题,因为它将启用换行符并固定宽度。使用其中一个解决方案来消除溢出。
这tabular*
对你有用只是因为它会让表格占据给定的宽度。因此你看不到溢出,尽管它确实存在。