[Tex/LaTex] Globally set Paragraph top and bottom margins

paragraphsspacing

I have the below code :

\documentclass[12pt]{book}
\usepackage{lipsum}

\begin{document}

\lipsum[1]
\lipsum[1]

\end{document}

I would like to be able to define the margins of new paragraphs. I am a web guy so I will give an example with CSS for what I am trying to do :

p{margin-top: 10px;margin-bottom: 5px;} 

how can I apply that?

Best Answer

TeX has no notion of space before and after paragraphs, but only of space between paragraphs. This space is, by default, zero, but with a small degree of flexibility, in order to help filling up a page when flush bottoms are requested (as in the book class, not in article).

The relevant parameter is \parskip: a declaration such as

\setlength{\parskip}{15pt plus 1pt minus 2pt}

tells TeX to space paragraph by 15pt, reducible to 13 or enlarged to 16. Such a spacing will disappear at page breaks.

However, many respected typographers frown upon paragraph spacing, that interrupts the flow of reading and spoils the uniformity of the page. While paragraph spacing may be considered for documents such as letters, it's really not recommended for longer texts.

Make a selection of books printed by good publishers and count how many of them use paragraph spacing: you'll find only a few, if any.