Comment ajouter un espacement vertical entre les éléments de bloc, mais pas en haut et en bas

Dire que j'ai un tas de P, LI, ou les éléments DIV, avec rien entre eux. Je veux contrôler l'espacement vertical entre eux, de sorte qu'ils ne rentrent pas si bien. Mais je ne veux pas ajouter n'importe quel espace en haut et en bas, puisque c'est géré par le parent de l'élément et je n'ai pas besoin de plus. Est-il une manière simple de faire ce qui fonctionne pour tous les éléments de bloc?

Dire que j'ai quelque chose comme ceci :

p {
  margin: 5px 0;
  }

et puis

 <div>
   <p>1</p>
   <p>2</p>
   <p>3</p>
   <p>4</p>
 </div>

Mais je ne veux pas 5px au-dessus de p 1, ou au-dessous de p 4, depuis la div a déjà rembourrage et je ne veux pas aller jouer avec ça. Je veux juste le 10px entre p 1 et p 2, p 2 et p 3, etc.

Je suis sûr que je pourrais faire quelque chose encombrants (et j'ai de nombreuses fois), mais je suis à la recherche de quelque chose de plus propre que je n'ai pas à faire beaucoup de casse pour cette commune de la situation.

Pouvez-vous montrer un exemple de ce que vous avez essayé? Juste le texte n'est pas assez pour comprendre votre problème.
veuillez clair ce que vous voulez
désolé, il n'était pas clair, édité.
Le plus simple serait d'utiliser p:last-item { margin: 0; }
ouais c'est probablement la plus facile, mais votre réponse que j'ai accepté, ci-dessous est l'approche élégante que je connaissais avaient d'exister. 🙂

OriginalL'auteur rob | 2012-04-25