Moja odpowiedź:
<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>
Czemu?
Technicznie rzecz biorąc, Span jest elementem wbudowanym, jednak może mieć szerokość, wystarczy najpierw ustawić jego właściwość wyświetlania na blok. Jednak w tym kontekście element div jest prawdopodobnie bardziej odpowiedni, ponieważ domyślam się, że chcesz wypełnić te elementy div treścią.
Jedną rzeczą, której na pewno nie chcesz, jest clear:both
ustawienie elementów div. Ustawienie tego w ten sposób oznacza, że przeglądarka nie pozwoli, aby żadne elementy znajdowały się w tej samej linii co one. W rezultacie twoje elementy będą się układać.
Uwaga, użycie display:inline
. Dotyczy to błędu podwajania marginesu ie6. Jeśli to konieczne, możesz rozwiązać ten problem na inne sposoby, na przykład warunkowe arkusze stylów.
Dodałem otokę (#cokolwiek), ponieważ domyślam się, że nie będą to jedyne elementy na stronie, więc prawie na pewno będziesz musiał oddzielić je od innych elementów strony.
W każdym razie mam nadzieję, że to pomocne.