在使用前需要导入包:\usepackage{longtable}

注意事项

  1. 使用:
\begin{longtable}
 ... 
\end{longtable}
  1. 在外层不能包裹
\begin{table}
 ... 
\end{table}
  1. 添加标题、标签后需要加\\
\begin{longtable}
 ...
\caption{...}
\label{...}\\
 ... 
\end{longtable}
  1. longtable目前只能在单栏中使用,不能在双栏或者多栏中使用。因此在双栏使用时需要在前面添加\onecolumn,之后通过\twocolumn恢复双栏。
  2. longtable在双栏中使用\onecolumn会令剩余的空间留白,可以通过调整表格高度撑满一页。
\onecolumn
\begin{center}
	\footnotesize	%set font-size
	\renewcommand\arraystretch{1.2}	% set the table hight
    \begin{longtable}
      ... 
    \end{longtable}
\end{center}
\twocolumn

使用

  1. 让跨页的表格每页都有相应的表头表尾,可以使用下面的语法。
% 这里写第一页表头的内容
\endfirsthead
 
% 这里写之后每一页的表头的内容,可选
\endhead
 
% 这里写第一页表尾的内容,可选
\endfoot
 
% 这里写最后一页表尾的内容,可选
\endlastfoot
  1. 若只需要在最后一页添加表格Note,可以使用ThreePartTable
\begin{center}
  \begin{ThreePartTable}
    \begin{TableNotes} 
        \footnotesize
        \item[] \textbf{Note:} 内容。
    \end{TableNotes}

      \begin{longtable}
          \caption{title}
          \label{example} \\
          \toprule
          ...
      \end{longtable}
    \end{ThreePartTable}
\end{center}
  1. 若表格太宽,可以使用以下命令调整:
\setlength{\tabcolsep}{1pt}
% Adjust margins
\setlength\LTleft{-1in plus 1 fill}
\setlength\LTright{-1in plus 1 fill}
\begin{longtable}
	...
\end{longtable}
  1. 可以使用landscape调整表格方向。
\begin{landscape}
	\begin{center}
		\begin{longtable}
			...
		\end{longtable}
	\end{center}
\end{lanscape}

目前表格留白没啥好的解决方案,若有好的解决方案可以评论区告知一下!