TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have the following in my preamble:

\setlength{\parindent}{0 pt}

Now there is too much whitespace before an enumerate list environment, in the example I have put an \mbox{} but it is the same with text. How do I decrease it without hacks like

share|improve this question
"A solution to (nuke) is an "integral solution" to (more nukes)"? – Martin Scharrer Apr 1 '11 at 21:00
@Martin: Yes. It is an important equation :P. – Jonas Teuwen Apr 1 '11 at 23:45
@JonasTeuwen Would you mind reuploading the image using the official stackexchange interface, i.e. the image icon on top of the text field (shortcut: CTRL+G)? The server it is hosted on seems to be down right now. – diabonas Mar 4 '12 at 21:50
@diabonas: Unfortunately, I could't find the it anymore. I have deleted it. – Jonas Teuwen Mar 4 '12 at 22:26
up vote 13 down vote accepted

This is actually a "conceptual bug" in LaTeX: \parskip is added before and after lists, even when they don't start/end a paragraph. See this answer for details.

Solution: Don't change the \parskip length, but load the parskip package or use one of the KOMA-script classes or memoir.

share|improve this answer
Which one would you recommend: parskip or the KOMA-script classes? – Jonas Teuwen Apr 1 '11 at 21:04
@Jonas: I recommend the KOMA-script classes -- be aware, however, that their default page layout is different from that of the standard classes. – lockstep Apr 1 '11 at 21:07

Changing \parindent and \parskip is considered as one of the "deadly sins" in l2tabu and should be avoided. You can use the parskip package, or one of the options provided by the KOMA-Script document classes.

However, if you decide to continue with the modifications to \parskip and \parindent, you can reduce the vertical space before and after the list by loading the enumitem package and using \setenumerate to change the value of topsep; simply add these lines to the preamble of your document (using the value that best suits your needs):


share|improve this answer
Thanks for showing me that it is a "deadly sin", I'll use the parskip package. – Jonas Teuwen Apr 1 '11 at 21:03
@JacobAkkerboom In the next sentence, the asker's example is almost explicitly listed as do not use. – mfloren Mar 22 at 0:55
@mfloren I should have been more clear and careful. I was personally using \setlength{\parindent}{0 em}, without changing \parskip. It seems that changing \parskip is what is really evil. I suppose I interpreted this answer as saying: "Never change either one of \parindent or \parskip". But I suppose the answerer is saying that this combination of changes is bad, as does his reference. This makes sense as the OP also uses the combination. – Jacob Akkerboom Mar 22 at 8:58

After \addtolength{\parskip}{\baselineskip} in the preamble

 \item  good
 \item  bad
share|improve this answer
I agree with the remarks about changing \parindent and \parskip. – Alain Matthes Apr 1 '11 at 21:03
Thanks, but it seems like it is bad practice to do so. – Jonas Teuwen Apr 1 '11 at 21:03
You can prefer to have a null indent but to add space to the parskip. It's a typography choice. After the problem is to know the side effects. For example in a mathematics exam it's sometimes useful to change itemsep if you use enumerate to ask questions. But the use of parskip package is better solution. – Alain Matthes Apr 1 '11 at 21:10

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.