La mia risposta:
<style>
#whatever div {
display: inline;
margin: 0 1em 0 1em;
width: 30%;
}
</style>
<div id="whatever">
<div>content</div>
<div>content</div>
<div>content</div>
</div>
Perché?
Tecnicamente, uno Span è un elemento in linea, tuttavia può avere larghezza, devi solo impostare prima la loro proprietà di visualizzazione per bloccare. Tuttavia, in questo contesto, un div è probabilmente più appropriato, poiché immagino che tu voglia riempire questi div con il contenuto.
Una cosa che sicuramente non vuoi fare è clear:bothimpostare i div. Impostarlo in questo modo significa che il browser non consentirà a nessun elemento di sedersi sulla stessa riga di loro. Il risultato, i tuoi elementi si accumuleranno.
Nota, l'uso di display:inline. Questo si occupa del bug del raddoppio del margine ie6. Potresti affrontarlo in altri modi, se necessario, ad esempio fogli di stile condizionali.
Ho aggiunto un wrapper (# qualunque cosa) perché immagino che questi non saranno gli unici elementi sulla pagina, quindi quasi sicuramente dovrai separarli dagli altri elementi della pagina.
Comunque, spero che sia utile.