下午好
我想改变两行之间的间隙(下图),因为longtable
它看起来不太好看,我想节省一个位置。我不知道该怎么做。
感谢帮助。
\documentclass[10pt,a6paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[main=english,slovak]{babel}
\usepackage[cm]{fullpage}
\usepackage[a6paper, top=10mm, left=10mm, right=10mm, bottom=10mm,foot=5mm,marginparsep=0mm,showframe]{geometry}
%showframe
\usepackage{tipa}
\usepackage{tabularx,booktabs}
\usepackage{multirow}
\usepackage{rotating}
\usepackage{graphicx}
\usepackage{array}
\usepackage{color}
\usepackage[dvipsnames]{xcolor}
\usepackage{longtable}
\usepackage{lscape}
\usepackage{enumitem}
\usepackage{tabularx,booktabs}
\usepackage{enumitem}
\usepackage{mathtools}
\begin{document}
\catcode`\-=12
\sloppy
{\small
\begin{longtable}{llp{5cm}}
\toprule
{\sffamily some text} & \textsl{some text} &
\setlist{nosep,topsep=0sp,label=--}
\vspace{-\baselineskip}
\begin{itemize}
\item[-] some text
\item[-] some text
\item[-] some text
\end{itemize}\\
{\sffamily some text} & \textsl{some text} &
\setlist{nosep,topsep=0sp,label=--}
\vspace{-\baselineskip}
\begin{itemize}
\item[-] some text
\item[-] some text
\item[-] some text
\end{itemize}\\
\toprule
\end{longtable}}
\end{document}
答案1
如果您将命令放在前言中,该命令\setlist
将适用于所有列表,因此无需每次都调用它(此外,在这种情况下,您必须使用环境的可选参数itemize
)。顺便说一句,您还可以为其指定名称,就像样式一样,这样只有具有此名称的列表才会继承列表选项。
无论如何,您是在列表前设置空格,而不是在列表后设置空格。为此,您可以使用before=
和键after=
:
\setlist{nosep,label=--,after=\vspace{-\baselineskip}, before=\vspace{-\baselineskip}}
结果如下: