我已经尝试了多种方法来使我正在处理的 Latex 表格垂直居中。但它总是水平居中但垂直对齐。我该怎么做才能使其垂直居中?
\begin{center}
\centering
\begin{tabular}{|p{5in}|p{.5in}|} \hline
\multicolumn{2}{|c|}{\textbf{Grade 11}} \\ [2ex] \hline
Accounting & \cellcolor{Red}Failed \\ \hline
Maths & \cellcolor{Red}Failed \\ \hline
Science & \cellcolor{Red}Failed \\ \hline
\multicolumn{2}{|c|}{\textbf{Grade 12}} \\ [2ex] \hline
Accounting & \cellcolor{Red}Failed \\ \hline
\hline
\end{tabular}
\end{center}
-------------------------------------
Grade 11
-------------------------------------
我需要它位于中心(水平和垂直):
-------------------------------------
Grade 11
-------------------------------------
答案1
当所有内容都包含在环境中时,我没有看到问题,table
并且booktabs
包被使用。(如果你有一个完整的 Latex 安装,它应该在系统上。)它是很容易推荐的表格包之一。
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{booktabs}
\begin{table*}[!tb]
\centering
{ % scope the arraystretch command below
\renewcommand{\arraystretch}{1.5}
\begin{tabular}{ @{} p{5in} p{0.5in} @{} } \toprule
\multicolumn{2}{c}{ \textbf{Grade 11} } \\ \midrule
Accounting & Failed \\
Maths & Failed \\ \bottomrule
\end{tabular}
} % end of \arraystretch scope.
\caption{ An example table }
\end{table*}
我还通过更新(仅在块内)将行拉得更远一些\arraystretch
,然后添加@{}
删除左右两侧的多余空间。这些都不是必需的。我删除了垂直线,可以像往常一样添加。我没有颜色,因为它对我不起作用。\toprule
和给出的水平线\midrule
具有不同的厚度,也可以调整。
注意:我不知道为什么这里的图形没有居中。表格在文档中居中。
如果您宁愿直接修复现有内容,则需要手动添加行上方的间距 - 下方的间距也已手动添加(\\[2ex]
)。只需在多列行上方添加一条额外的行即可
\multicolumn{2}{|c|}{ } \\ % add this
\multicolumn{2}{|c|}{\textbf{Grade 11}} \\[2ex] \hline
% ...
不过,我很乐意推荐booktabs
让表格看起来更好。如果你愿意,你仍然可以调整间距,但这种需要的可能性要小得多。另一个通常推荐用于表格的软件包是array
。