Öncelikle kaç tane yanyana koyacağınızı bilmem gerekiyor ben 8 tane düşündüm siz ona göre ayarlamanızı yaparsınız.

Div in genişliği 400px olsun diyelim her bir kutu 50px olursa yanyana gelecektir bir şartla -2px yapmaz isek son div aşağı düşecektir neden derseniz div elemanlarının border kalınlığınıda hesaba katmanız gerekiyor.

Örnek:
<style>
#div {border:1px solid gray;display:table; width:400px;}
#eleman {border:1px solid red; width:48px; float:left; height:50px; }
</style>

<div id="div">
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
<div id="eleman"></div>
</div>
Kısaca böyle eğer her dive margin vereceğim diyorsan margin değerini 48px den - yaparak çıkartırsan sorunsuz tüm divler yan yana sıralancaktır.
Not: eğer margin dört köşeden olursa margin değeri * 2 yapıp eleman div genişiği - çıkan margin değeri yapmalısın.
İyi Çalışmalar