각 목록의 제목이 중앙에 있는 세 개의 항목 목록이 서로 옆에 필요합니다. multicol
-패키지 사용내 요구사항에 맞지 않는 것 같습니다.~처럼그것은 내가 독립적으로 열을 채우는 것을 허용하지 않습니다. 그렇죠?
모든 것을 테이블에 담기, 역시 적절하지 않은 것 같습니다.
나는 를 사용하여 솔루션을 생각해 냈습니다 minipage
. 비록 과잉처럼 느껴지지만, 제가 원하는 것에 꽤 가깝습니다. 하지만 열 사이에 약간의 간격을 두고 미니페이지를 나란히 정렬할 수는 없습니다. 세 개의 미니페이지가 공간을 100% 사용하도록 하는 방법은 다음과 같습니다.
30% 열 1, 5% 공백, 30% 열 2, 5% 공백, 30% 열 3
나는 그것을 시도했지만 \hspace
효과가 없었습니다.
\documentclass[11pt,a4paper]{article}%
\usepackage{enumitem}
\begin{document}
\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 1}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\item four
\end{itemize}
\end{minipage}
\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 2}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two.one \\ two.two
\item three
\item four
\end{itemize}
\end{minipage}
\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 3}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\end{itemize}
\end{minipage}
\end{document}
내가 원하는 것을 달성하는 데 훨씬 쉬운 것이 있습니까?
답변1
추가된 열 사이 공간뿐만 아니라 \noindent
첫 번째 미니페이지 이전에도 필요했습니다. 그렇지 않으면 열 너비를 초과했습니다. 실제로 미니페이지는 이러한 종류의 다중 열 문제를 처리하는 좋은 방법입니다.
줄 끝 퍼센트 기호를 삽입하여 David가 지적한 2개의 흩어진 공백을 제거하도록 수정되었습니다.
\documentclass[11pt,a4paper]{article}%
\usepackage{enumitem}
\begin{document}
\noindent\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 1}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\item four
\end{itemize}
\end{minipage}%
\kern.05\textwidth%
\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 2}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two.one \\ two.two
\item three
\item four
\end{itemize}
\end{minipage}%
\kern.05\textwidth%
\begin{minipage}[t]{0.30\textwidth}
{\centering \subsection*{Header 3}}
\begin{itemize}[align=left,leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\end{itemize}
\end{minipage}
\end{document}
답변2
테이블 솔루션을 보여주기 위해:
% arara: pdflatex
\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\usepackage[inline]{enumitem}
\newcommand*\myTableHeader[1]{\multicolumn{1}{c}{\large\textbf{#1}}}
\begin{document}
\noindent\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}p{0.3\linewidth}p{0.3\linewidth}p{0.3\linewidth}@{}}
\myTableHeader{Header 1} & \myTableHeader{Header 2} & \myTableHeader{Header 3} \\\addlinespace
\begin{itemize*}[itemjoin={\newline}]
\item one one one one one one
\item two
\item three
\item four
\end{itemize*}
&
\begin{itemize*}[itemjoin={\newline}]
\item one one one one one one
\item two.one \newline two.two
\item three
\item four
\end{itemize*}
&
\begin{itemize*}[itemjoin={\newline}]
\item one one one one one one
\item two
\item three
\end{itemize*}\\
\end{tabular*}
\end{document}
업데이트:
itemize
여기서는 이전 정의를 계속 사용할 수 있습니다 . 하지만 이를 위해서는 두 번째 행 앞 공백의 높이를 조작해야 합니다. 이미지는 보정 없이 결과를 보여줍니다. 코드에는 이미 \vspace{-10pt}
매우 보기 좋은 이 포함되어 있습니다.
\documentclass{article}
\usepackage{array}
\usepackage{enumitem}
\newcommand*\myTableHeader[1]{\multicolumn{1}{c}{\large\textbf{#1}}}
\begin{document}
\noindent\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}p{0.3\linewidth}p{0.3\linewidth}p{0.3\linewidth}@{}}
\myTableHeader{Header 1} & \myTableHeader{Header 2} & \myTableHeader{Header 3} \vspace{-10pt}\\
\begin{itemize}[align=left, leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\item four
\end{itemize}
&
\begin{itemize}[align=left, leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two.one \newline two.two
\item three
\item four
\end{itemize}
&
\begin{itemize}[align=left, leftmargin=*,labelsep=1ex]
\item one one one one one one
\item two
\item three
\end{itemize}\\
\end{tabular*}
\end{document}