Моя відповідь:
<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>
Чому?
Технічно, Span - це вбудований елемент, однак він може мати ширину, вам просто потрібно спочатку встановити властивість відображення для блокування. Однак у цьому контексті div, мабуть, є більш доречним, оскільки я припускаю, що ви хочете наповнити ці div div вмістом.
Одне, що ви точно не хочете робити, - це clear:bothвстановити div. Якщо встановити його так, це означатиме, що браузер не дозволить жодним елементам розташовуватися на одному рядку з ними. У результаті ваші елементи будуть складені.
Зверніть увагу, використання display:inline. Це стосується помилки подвоєння маржі ie6. За потреби ви можете вирішити цю проблему іншими способами, наприклад, умовні таблиці стилів.
Я додав обгортку (#whatever), оскільки, припускаю, це не будуть єдиними елементами на сторінці, тому майже напевно вам доведеться відокремити їх від інших елементів сторінки.
У будь-якому випадку, я сподіваюся, це корисно.