## 编译环境 操作系统 * [x] Windows 7/8/10 * [ ] macOS * [ ] Linux `若需勾选,请把[ ]改成[x]` Tex发行版 * [x] TexLive `2019` * [ ] MikTeX `版本号` * [ ] CTeX `若需勾选,请把[ ]改成[x]` ## 我的问题 怎样让列表与前面段的距离小一点 我的代码: ``` \documentclass{ctexart} \usepackage{fontawesome} \setlength{\parindent}{0pt} \begin{document} \renewcommand{\descriptionlabel}{\faChild} \begin{description} \setlength{\topsep}{-20pt} \setlength{\partopsep}{0pt} \setlength{\parskip}{0pt} \setlength{\itemsep}{0pt} \item 劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \item 劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \end{description} 你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \renewcommand{\descriptionlabel}{\faChild} \begin{description} \setlength{\topsep}{-20pt} \setlength{\partopsep}{0pt} \setlength{\parskip}{0pt} \setlength{\itemsep}{0pt} \item 劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \item 劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \end{description} \end{document} ``` 结果: ![](https://wenda.latexstudio.net/data/attach/201005/eYBkVU0q.png)

3 回答3

2
`description` 中对 `\topsep` 和 `\partopsep` 的设置只在环境内局部有效,description 和正文之间的空白应该是因为外面恢复了默认的数值。 如果要取消列表之间和外部的空白,可以用 `enumitem` 宏包,然后 `\setlist{nosep}`。 如果要纯手动解决,要注意到 `\@listi`、`\@listii` 等命令会重新设置 `\parsep` 这些值,`\normalsize`、`\small` 和 `\footnotesize` 会调用或者重新定义 `\@listi`,所以要重新定义这些命令。原来的定义在 `size10.clo` 等文件,跟选择的正文字号有关;另外使用 `ctex` 处理字号时也重新定义了一部分。 以 `10pt` 为例,可以这样重新定义: ``` \partopsep\z@skip \DeclareRobustCommand\small{% \@setfontsize\small\@ixpt{11}% \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus2\p@ \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@ \def\@listi{\leftmargin\leftmargini \topsep \z@skip \parsep \z@skip \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \DeclareRobustCommand\footnotesize{% \@setfontsize\footnotesize\@viiipt{9.5}% \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus\p@ \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@ \def\@listi{\leftmargin\leftmargini \topsep \z@skip \parsep \z@skip \itemsep \parsep}% \belowdisplayskip \abovedisplayskip } \def\@listi{\leftmargin\leftmargini \parsep \z@skip \topsep \z@skip \itemsep\z@skip} \let\@listI\@listi \@listi \def\@listii {\leftmargin\leftmarginii \labelwidth\leftmarginii \advance\labelwidth-\labelsep \topsep \z@skip \parsep \z@skip \itemsep \parsep} \def\@listiii{\leftmargin\leftmarginiii \labelwidth\leftmarginiii \advance\labelwidth-\labelsep \topsep \z@skip \parsep \z@skip \partopsep \z@skip \itemsep \topsep} ```
0
可以尝试宏包`paralist`中的`compactitem`环境. eg: ``` \documentclass{ctexart} \usepackage{fontawesome5} \setlength{\parindent}{0pt} \usepackage{paralist}%定义列表 \begin{document} \begin{compactitem}[\hspace{0pt} $\bullet$] \item {劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承} \item {劳仑衣普桑,认至将指点效则机,最你劳仑衣普桑,认至将指点效则机,最你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承} \end{compactitem} 你更枝。想极整月正进好志次回总般,段然取向使张规军证回,世市总李率英茄持伴。用阶千样响领交出,器程办管据家元写,名其直金团。化达书据始价算每百青,金低给天济办作照明,取路豆学丽适市确。如提单各样备再成农各政,设头律走克美技说没,体交才路此在杠。响育油命转处他住有,一须通给对非交矿今该,花象更面据压来。与花断第然调,很处己队音,程承 \end{document} ``` ![](https://wenda.latexstudio.net/data/attach/201006/Nd7ClEkw.png)
0
这个问题早就有人讲过了。[https://wenda.latexstudio.net/article-5036.html](https://wenda.latexstudio.net/article-5036.html) 这里面是直接修改`list`环境。 我自己常用的是用`enumitem`宏包定制列表的垂直和水平距离。具体用法看宏包文档。 ```tex %!TEX program = xelatex \documentclass[a4paper,12pt,UTF8]{ctexart} \usepackage[left=3.18cm,right=3.18cm,top=2.54cm,bottom=2.54cm,showframe]{geometry}%页面设置 \usepackage{enumitem}%列表 \usepackage{zhlineskip}%行距 \usepackage{zhlipsum}%中文乱数假文 \pagestyle{plain} \begin{document} \zhlipsum[1] \begin{itemize}[nosep] \item \zhlipsum[3][name=zhufu] \item \zhlipsum[3][name=zhufu] \item \zhlipsum[3][name=zhufu] \end{itemize} \zhlipsum[1] \end{document} ``` ![](https://wenda.latexstudio.net/data/attach/201007/PTv40Hsy.png)

你的回答

请登录后回答

你的回答将会帮助更多人,请务必认真回答问题。