在表格中对齐项目符号

在表格中对齐项目符号

对此还很陌生。希望您能帮忙,我试图在表格中对齐项目符号,但无法摆脱单元格开头的巨大空间。

\documentclass[10pt]{article}
\usepackage{enumitem}
\begin{document}
\begin{table}[h]
    \renewcommand{\arraystretch}{1.5}
    \begin{tabular}{|p{4.5cm}|p{11.2cm}|}
    \hline
    \textbf{Role} & \textbf{Responsibilities} \\ \hline
    Insert Role &   
        \begin{description}[font=$\bullet$~\normalfont]
        \item Insert responsibility
        \end{description}        \\ \hline
    Insert Role & Aufzählung \\ \hline
    Insert Role & Aufzählung \\ \hline
    Insert Role & Aufzählung \\ \hline
    \end{tabular}
\end{table}
\end{document}

图像

已尝试\textbullet,但这不会在项目符号和文本之间留下空间,但垂直对齐正在起作用。

想要将项目符号与第一列对齐。

编辑

代码已给出,等待稍作编辑即可显示。

添加了\documentclass{article}\usepackage{enumitem}\begin{document} ... \end{document}使其可编译。

答案1

看看这个建议是否能帮助你:

\documentclass{article}
\usepackage{geometry}
\usepackage{enumitem}
\usepackage{makecell}
\renewcommand\theadfont{\bfseries}
\renewcommand\theadgape{}

\begin{document}
\begin{table}[h]
\setlist[itemize]{nosep,
                 leftmargin=*,
                 label=\textbullet,
                 before=\begin{minipage}[t]{\linewidth}, 
                 after=\end{minipage}
                 }
\setcellgapes{3pt}
\makegapedcells
    \begin{tabular}{|p{4cm}|p{9cm}|}
    \hline
\thead[l]{Role} & \thead[l]{Responsibilities}   \\ 
    \hline
Insert Role     &   \begin{itemize}
                \item Insert responsibilitytext, text, text, text, text, text, text, text, text, text, text, text, text, text, 
                    \end{itemize}       \\  \hline
Insert Role     &   Aufzählung          \\ \hline
Insert Role     &   Aufzählung          \\ \hline
Insert Role     &   Aufzählung          \\ \hline
    \end{tabular}
\end{table}
\end{document}

笔记:由于您定义了表格宽度,因此它会溢出页面。因此我减少了列宽并添加了包geometry

编辑: 只要单元格中有一个列表,其中包含一个包含两行文本的项目或两个项目,上述解决方案就可以正常工作。如果是单排序、单行项目,最好使用以下解决方案:

\documentclass{article}
\usepackage{geometry}
\usepackage{makecell}
\renewcommand\theadfont{\bfseries}
\renewcommand\theadgape{}
\newcolumntype{P}[1]{>{\csname @minipagetrue\endcsname}p{#1}} % <---
\usepackage{enumitem}

\begin{document}
\begin{table}[h]
\setlist[itemize]{nosep,        
                  leftmargin=*,
                  label=$\bullet$,
                  after=\vspace{-\baselineskip}
                  }

\setcellgapes{3pt}
\makegapedcells
    \begin{tabular}{|p{4cm}|P{9cm}|}
    \hline
\thead[l]{Role}    & \thead[l]{Responsibilities}  \\
    \hline
Insert Role     &   \begin{itemize}
                \item Insert responsibility
                    \end{itemize}       \\  \hline
Insert Role     &   Aufzählung          \\ \hline
Insert Role     &   Aufzählung          \\ \hline
Insert Role     &   Aufzählung          \\ \hline
    \end{tabular}
\end{table}
\end{document}

在此处输入图片描述

您可能更喜欢(特别是在表格单元格中有更多带有列表的表格的情况下)将表格中使用的列表设置移动到序言中,并借助etoolbox表格全局包进行操作:

\usepackage{etoolbox}
\AtBeginEnvironment{table}{%
\setlist[itemize]{nosep,
                  leftmargin=*,
                  label=$\bullet$,
                  after=\vspace{-\baselineskip}
                  }
                          }

答案2

使用\textbullet~~

图像

(受@Zarko 在表格单元格中使用长换行的用例启发)

更简单,但没有悬挂缩进

通过此代码实现--

\documentclass[10pt]{article}
\usepackage{enumitem}
\begin{document}
\begin{table}[h]
\renewcommand{\arraystretch}{1.5}
    \begin{tabular}{|p{4.5cm}|p{5.5cm}|}
    \hline
    \textbf{Role} & \textbf{Responsibilities} \\ \hline
    Insert Role & \textbullet~~Insert responsibility \\ \hline
    Insert Role & \textbullet~~Insert responsibility that is really a long 
                     list of items spilling to the next line \\ \hline
    Insert Role & Aufzählung \\ \hline
    Insert Role & Aufzählung \\ \hline
    \end{tabular}
\end{table}
\end{document}

相关内容