表格格式不正确

表格格式不正确

当我编写以下代码时,出现了一些奇怪的输出:

代码:

\begin{tabular}{|>{\centering}m{15mm}|>{\centering}m{15mm}|>{\centering}m{15mm}|>{\centering}m{15mm}|>{\centering}m{15mm}|}
\hline
\multicolumn{1}{|c|}{\textbf{Element}}    &   \multicolumn{2}{c|}{\textbf{Local Nodes}}   &   \multicolumn{2}{c|}{\textbf{Global Nodes}}\\
\hline
a & a & a & a & a \\
\end{tabular}\\

第二行的最后一列(即带有“a”的那一列)格式错误。此外,当我尝试向表格中添加更多行时,它喜欢将第一个条目添加到第五列。

我感觉我的代码中只漏掉了一个拼写错误。

作为参考,以下是序言:

\documentclass[letterpaper,12pt]{report}
\usepackage[T1]{fontenc}
\usepackage[english]{babel}
\usepackage[
backend=biber,
style=ieee,
]{biblatex}
\usepackage{csquotes}
\title{\bfseries\sffamily\Huge XX}
\author{\sffamily XX}
\date{\sffamily XX}
\usepackage[left=2.5cm, right=2.5cm, top=2.5cm, bottom=2.5cm]{geometry}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{tocloft}
\usepackage{lipsum}
\renewcommand{\cfttoctitlefont}{\sffamily\Large\bfseries}
\renewcommand{\contentsname}{\Huge \bfseries \sffamily Contents}
\renewcommand{\cftsecleader}{\cftdotfill{\cftdotsep}}
\usepackage{titlesec}
\usepackage{amsmath}
\setlength{\parskip}{10pt}
\setlength{\parindent}{0pt} %This removes the standard indentation from the 
beginning of paragraphs
\titleformat{\chapter}
{\Huge\bfseries\sffamily} % format
{\Huge{\thechapter}\hspace{2mm}}                % label
{0pt}             % sep
{\Huge}           % before-code 
\titleformat{\section}
{\Large\bfseries\sffamily} % format
{\Large{\thesection}\hspace{2mm}}                % label
{0pt}             % sep
{\Large}           % before-code 
\titleformat{\subsection}
{\normalfont\sffamily\large\bfseries}
{\thesubsection}{1em}{}
\titleformat{\subsubsection}
{\normalfont\sffamily\normalsize\bfseries}
{\thesubsubsection}{1em}{} 
\usepackage[font=sf]{caption}
\usepackage{palatino}
\usepackage{fourier}
\usepackage{physics}
\usepackage{array}
\raggedright
\usepackage{subfiles}
\addbibresource{bibliography.bib}

输出 输出

答案1

在此处输入图片描述

您至少应该在最后一列\arraybackslash添加:\centering

\begin{tabular}{|*{5}{>{\centering\arraybackslash}m{15mm}|}}
    \hline
\textbf{Element}
    &   \multicolumn{2}{c|}{\textbf{Local Nodes}}
        &   \multicolumn{2}{c|}{\textbf{Global Nodes}}  \\
    \hline
a & a & a & a & a                                       \\
    \hline
\end{tabular}

编辑: 正如 Mico 在下面的评论中所建议的那样,您可以为更简单的表格类型定义新的列类型,例如:

newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}

然后使用它作为

\begin{tabular}{|*{5}{M{15mm}|}}

(如果列宽相等)或者例如

\begin{tabular}{|M{15mm}| M{20mm}| M{20mm}| M{10mm}| M{10mm}|}

当它们的宽度不同时。

相关内容