为什么在这种情况下设置固定宽度不起作用?

为什么在这种情况下设置固定宽度不起作用?

为什么这不起作用?我想设置每一列,0.3\linewidth但它给出一个错误,提示“失控参数”并且没有 PDF。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{booktabs,capt-of}

\begin{document}
  \begin{table}[!t]
  \centering
  \caption{MY TABLE}
  \label{tab:table7}
  \begin{tabular}{p{0.3\linewidth}*{3}
                            \toprule
    No & A1& A2\\ \midrule
    1 &  Q3 & Q5         \\ \bottomrule
  \end{tabular}
\end{table}
%

\end{document}

答案1

正确的语法是

*{3}{p{0.3\textwidth}}

但你无法获得中心位置。

我真的不认为您真的想以那样的方式展开表格,但这取决于实际的表格条目。

array可以使用w{c}{<dimen>}列类型:固定宽度<dimen>和居中(单元格中没有自动换行符)。

正确的尺寸可以通过算术来获得,而不是通过猜测(并且0.3\textwidth是错误的猜测)。

\documentclass{article}
\usepackage{booktabs}
\usepackage{array}

\begin{document}

\begin{table}[!htp]
\centering

\caption{MY TABLE}
\label{tab:table7}

\bigskip

\begin{tabular}{*{3}{w{c}{\dimexpr\textwidth/3-2\tabcolsep}}}
\toprule
No & A1& A2 \\
\midrule
1 &  Q3 & Q5 \\
\bottomrule
\end{tabular}

\end{table}

\end{document}

在此处输入图片描述

相关内容