由于我的表格将跨越多页,因此我尝试使用 longtables。我现在遇到的问题是标题浮在表格上方,导致难以阅读表格。我希望在表格所在的每一页下方都有标题,但不确定如何实现。
\usepackage{longtable}
\section{System}
\begin{longtable}[H]
\begin{center}
\rowcolors{2}{gray!15}{white}
\begin{tabular}{|p{0.20\linewidth}|p{0.80\linewidth}|}
\hline
\rowcolor{cyan}
\textbf{field} & \textbf{value}
\\ \hline
website & http://www.funtoo.org \\ \hline
\end{tabular}
\end{center}
\caption{Funtoo Details}
\label{Funtoo Details}
\end{longtable}
答案1
花一些时间来掌握longtable
环境的结构(和语法):
- 不要在环境
tabular
中使用环境longtable
。真的不要这么做。 - 不要
center
在环境中使用环境longtable
—— 它会自动居中(假设它不会比\linewidth
设计或意外的更宽……) - 您的整个宽度
tabular
不是\linewidth
但是\linewidth + 4\tabcolsep + 3\arrayrulewidth
。这不是您的意图,对吗? - A
longtable
不浮动——[H]
定位说明符不执行任何操作(除了使代码混乱)
以下内容可能是进一步改进的有用起点。请注意 (a) 我如何将页眉、页脚和正文分开,longtable
以及 (b) 计算两列的可用宽度。
\documentclass{article}
\usepackage{longtable,url}
\begin{document}
\section{System}
\begin{longtable}{|p{\dimexpr0.2\linewidth-2\tabcolsep-1.5\arrayrulewidth\relax}|
p{\dimexpr0.8\linewidth-2\tabcolsep-1.5\arrayrulewidth\relax}|}
%% define the header
\hline
%\rowcolor{cyan}
\textbf{field} & \textbf{value}\\
\hline
\endhead
%% define the footer
\hline
\multicolumn{1}{c}{}\\ % blank line
\caption{Funtoo Details}
\label{Funtoo Details}
\endfoot
%% body of table
website & \url{http://www.funtoo.org} \\
website & \url{http://www.funtoo.org} \\
website & \url{http://www.funtoo.org} \\
website & \url{http://www.funtoo.org} \\
website & \url{http://www.funtoo.org} \\
\end{longtable}
\end{document}