我正在尝试创建一个填写表格,我试图使用表格来实现我的目标,但是当我使用多列时,我遇到了三个问题
当我在下一个单元格中使用多列时,点不会从同一位置开始。例如,第一行和第三行不会从与第二行和第四行相同的位置开始。
我试图让一个单元格变长,同时让同一行(在本例中为第三行)中的另一个单元格变短(距离相同),但正如您所见,这不起作用......
尽管第 3 行的 p 列宽度之和 (0.55+0.05+0.15=0.75) 与第 1 行的多列宽度 (0.75) 相同,但第 1 行和第 3 行的长度并不相等。
例子:
\documentclass[10pt]{article}
\begin{document}
\begin{center}
\begin{tabular}{ p{0.15\linewidth} p{0.35\linewidth} p{0.05\linewidth} p{0.35\linewidth} }
Naam & \multicolumn{3}{ p{0.75\linewidth} }{\dotfill} \\
Datum & \dotfill & Tijd & \dotfill \\
Straat & \multicolumn{1}{p{0.55\linewidth}}{\dotfill} & Nr & \multicolumn{1}{p{0.15\linewidth}}{\dotfill} \\
Postcode & \dotfill & Tel & \dotfill \\
\end{tabular}
\end{center}
\end{document}
答案1
您的环境的总宽度tabular
不是1\linewidth
,而是1\linewidth+8\tabcolsep, i.e., quite a bit more than
\linewidth`。
由于表格材料的整体宽度应该等于\linewidth
,我建议您使用tabularx
环境并让 LaTeX 计算相对列宽。要X
适当设置四列的宽度,请注意 0.6:1.4 = 0.15:0.35。
\documentclass[10pt]{article}
\usepackage{tabularx}
\begin{document}
\noindent
\begin{tabularx}{\linewidth}{ @{}
*{2}{ >{\hsize=0.6\hsize}X >{\hsize=1.4\hsize}X } @{}}
Naam & \multicolumn{3}{l@{}}{\dotfill} \\
Datum & \dotfill & Tijd & \dotfill \\
Straat & \dotfill & Nr & \dotfill \\
Postcode& \dotfill & Tel & \dotfill \\
\end{tabularx}
\end{document}