正确的表格格式

正确的表格格式

理想情况下,我会将文本和注释垂直对齐在页面底部,而不是minipage,也不使用multirow

外柱应占用尽可能小的空间,中间柱应占用大部分空间。这就是我将其放在0.53\linewidht那里的原因。

我需要能够将中间一列的句子分开,因为它们是项目符号,但仍然保持宽度。

以下 MWE 是我的三次尝试,我只想使用一种方法。

此代码:

\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage[bottom]{footmisc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage{booktabs}
\usepackage[flushleft]{threeparttable}
\usepackage{amsmath}
\usepackage{svg}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{makecell}
\usepackage{tabularx}
\usepackage[T1]{fontenc}
\usepackage{tcolorbox}%%%This is to make cool boxes
\usepackage{blindtext}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
\usepackage[final]{microtype}


\begin{document}
\begin{table}[h]
    \centering
    \caption{On Data.}
    \label{tab:data_section_dga}
    \begin{tabular}{l p{0.53\textwidth} r}
    \toprule
    \textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/Recitals} \\
    \midrule
    \makecell[l]{bla \\ bla} & 
    \makecell{
         bla\footnote{bla} and bla\footnote{bla} \\
         bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla\\
            bla} 
    & Rec 3-4 \\    
        \multirow{3}{*}{bla} & bla bla bla \textit{bla}\footnote{bla} and \textit{bla}\footnote{bla}) & \multirow{3}{*}{Rec 3-4}\\
        \addlinespace
         & bla bla bla & \\
        \addlinespace
     & bla bla bla  \\
        \addlinespace
    \makecell[l]{bla \\ bla} &
    \begin{minipage}{0.53\textwidth}
        bla bla bla 
         \textit{bla}\footnote{bla} and \textit{bla}\footnote{bla}
         bla bla bla \\
bla bla bla \\ 
bla bla bla 
     \end{minipage} & bla \\
    \end{tabular}
\end{table}
\end{document}

产生以下输出: 输出

\makecell不允许垂直对齐,而且我必须手动为长文本换行,这并不理想。multirow垂直居中几乎完美,尽管我认为这是我的一个错误。并minipage允许左侧的文本居中,但脚注在表格上。

你会怎么办?

答案1

我怀疑你正在寻找这样的事情:

在此处输入图片描述

  • 对于表使用tabularx
  • 删除的是“minipage(页面底部)”
  • 对于脚注使用成对的\fotnotemark- footnotetext
  • 用于垂直居中单元格内容的命令\renewcommand\tabularxcolumn[1]{m{#1}}
\documentclass[12pt]{report}
%\usepackage[utf8]{inputenc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage[bottom]{footmisc}
%\usepackage[inline]{enumitem}
%\usepackage{array}
\usepackage{booktabs}
\usepackage[flushleft]{threeparttable}
\usepackage{amsmath}
\usepackage{svg}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{makecell}
\usepackage{tabularx}
\usepackage[T1]{fontenc}
\usepackage{tcolorbox}%%%This is to make cool boxes
\usepackage{blindtext}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm,
            showframe]{geometry}
\usepackage[final]{microtype}
\usepackage{tcolorbox}%%%This is to make cool boxes

\begin{document}
\blindtext[2]
    \begin{table}[ht]
    \caption{On Data.}
    \label{tab:data_section_dga}
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{tabularx}{\linewidth}{l X r}
    \toprule
\textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/Recitals} \\
    \midrule
\makecell[l]{bla \\ bla} 
    &   bla\footnotemark[1] and bla\footnotemark[2] 
        bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla
        bla
        &   Rec 3-4     \\
    \addlinespace
\multirow{3}{*}{bla} 
    &   bla bla bla \textit{bla}\footnotemark[3] and \textit{bla}\footnotemark[4] 
        &   \multirow{3}{*}{Rec 3-4}\\
    %\addlinespace
    & bla bla bla 
        &               \\
    %\addlinespace
    & bla bla bla   
        &               \\
    \addlinespace
\makecell[l]{bla \\ bla} 
    &   bla bla bla \textit{bla}\footnotemark[5] and \textit{bla}\footnotemark[6]
        bla bla bla
        &               \\
    \bottomrule
    \end{tabularx}
\end{table}

\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}

\blindtext
\end{document}

注意:不要加载两次包!

附录:

  • 编辑你的问题和评论后,至少对我来说,你之后
  • 所以,我再次猜测这应该是什么
  • 现在我做如下修改:
    • 在中间一列引入列表,
    • 更改第一列和最后一列的设置,
    • 删除单元格中的所有multirow指令\makecell
  • 而是p{...}使用m{...}列类型

\documentclass[12pt]{report}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm,
            showframe]{geometry}

\usepackage[T1]{fontenc}
\usepackage[final]{microtype}
\usepackage[inline]{enumitem}
\usepackage{etoolbox}
\AtBeginEnvironment{table}{%
\setlist[itemize]{nosep,
                  leftmargin=*,
                  before=\begin{minipage}{\linewidth}\raggedright,
                  after=\end{minipage}
                 }
                           }% end of AtBeginEnvironment

\usepackage{booktabs, tabularx}
\usepackage{blindtext}

\begin{document}
\blindtext[2]
    \begin{table}[ht]
    \caption{On Data.}
    \label{tab:data_section_dga}
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{tabularx}{\linewidth}{@{} m{2em} X >{\raggedright\arraybackslash}m{5em} @{}}
    \toprule
\textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/ Recitals} \\
    \midrule
bla bla
    &   \begin{itemize}
    \item   bla\footnotemark[1] and bla\footnotemark[2]
    \item   bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla
    \item   bla
        \end{itemize}
        &   Rec 3-4     \\
    \addlinespace
bla
    &   \begin{itemize}
    \item   bla bla bla \textit{bla}\footnotemark[3] and \textit{bla}\footnotemark[4]
    \item   bla bla bla
    \item   bla bla bla
        \end{itemize}
        &   Rec 3-4     \\
    \addlinespace
bla bla
    &   \begin{itemize}
    \item   bla bla bla \textit{bla}\footnotemark[5] and \textit{bla}\footnotemark[6]
    \item   bla bla bla
        \end{itemize}
        &               \\
    \bottomrule
    \end{tabularx}
\end{table}

\footnotetext[1]{bla}
\footnotetext[2]{bla}
\footnotetext[3]{bla}
\footnotetext[4]{bla}
\footnotetext[5]{bla}
\footnotetext[6]{bla}

\blindtext
\end{document}

在此处输入图片描述

相关内容