Latex Xóa khoảng cách giữa các mục trong danh sách


Câu trả lời:


172

Nó dễ dàng hơn với gói enumitem:

\documentclass{article}
\usepackage{enumitem}
\begin{document}
Less space:
\begin{itemize}[noitemsep]
  \item foo
  \item bar
  \item baz
\end{itemize}

Even more compact:
\begin{itemize}[noitemsep,nolistsep]
  \item foo
  \item bar
  \item baz
\end{itemize}
\end{document}

thí dụ

Gói enumitem cung cấp rất nhiều tính năng để tùy chỉnh dấu đầu dòng, đánh số và độ dài.

Gói paralist cung cấp các danh sách rất nhỏ gọn: compactitem, compactenum và thậm chí cả danh sách trong các đoạn văn như inparaenum và inparaitem.


15
Nếu bạn muốn xóa khoảng cách trên toàn cầu cho mọi danh sách trong tài liệu của mình, chỉ cần đưa \setlist[itemize]{noitemsep}vào phần mở đầu của bạn.
Fabian Winkler

Điều này không hoạt động trong máy của tôi, có thể là phiên bản gói?
RSFalcon7

7
@ RSFalcon7: Bạn cần phải xác định enumitemgói trước: bài vở \usepackage{enumitem} \setlist[itemize]{noitemsep}... cũng thiết lập các itemsep cho toàn bộ tài liệu đến một giá trị nhất định làm việc theo cách đó\setlist[itemize]{itemsep=1cm}
petermeissner

@marvin_dpr Cảm ơn, vấn đề hơi cũ, nhưng tôi nghĩ rằng việc cài đặt texlive của tôi không phải là tốt nhất. Sau khi cài đặt lại mọi thứ trở lại như ban đầu.
RSFalcon7

1
Tôi cũng muốn nói thêm rằng nolistseptùy chọn này hiện không được dùng nữa và tùy chọn kế nhiệm của nó là nosep"loại bỏ tất cả khoảng cách dọc".
larsac07

38

Bạn có thể làm điều gì đó như sau:

\documentclass{article}

\begin{document}

Normal:

\begin{itemize}
  \item foo
  \item bar
  \item baz
\end{itemize}

Less space:

\begin{itemize}
  \setlength{\itemsep}{1pt}
  \setlength{\parskip}{0pt}
  \setlength{\parsep}{0pt}
  \item foo
  \item bar
  \item baz
\end{itemize}

\end{document}

10

Câu hỏi này đã được hỏi trên /tex/10684/vertical-space-in-lists . Câu trả lời được bình chọn cao nhất cũng đề cập đến enumitemgói (do Stefan trả lời ở đây), nhưng tôi cũng thích câu trả lời này, liên quan đến việc tạo môi trường phân mục của riêng bạn thay vì tải một gói mới:

\newenvironment{myitemize}
{ \begin{itemize}
    \setlength{\itemsep}{0pt}
    \setlength{\parskip}{0pt}
    \setlength{\parsep}{0pt}     }
{ \end{itemize}                  } 

Cái nào nên được sử dụng như thế này:

\begin{myitemize} 
  \item one 
  \item two 
  \item three 
\end{myitemize}

Nguồn: https://tex.stackexchange.com/a/136050/12065


1

compactitem Làm công việc.

\usepackage{paralist}

...

\begin{compactitem}[$\bullet$]
    \item Element 1
    \item Element 2
\end{compactitem}
\vspace{\baselineskip} % new line after list
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.