Вы можете свободно перемещать одну колонку влево, а другую - вправо. Ваша проблема, скорее всего, связана с тем, что вы используете 100% ширины. Если у этих элементов есть какие-либо поля или границы, связанные с ними, это может привести к тому, что они будут шире, чем вы ожидаете, и, следовательно, не будут располагаться рядом. Некоторые браузеры будут иметь проблемы с этим, даже если нет полей / границ. Попробуйте уменьшить ширину одного из столбцов примерно на 1%.
Другая возможность - атрибут clear. Убедитесь, что оба столбца имеют четкое значение: нет; применяется к ним. Кроме того, вы можете применить очистку: слева; в левом столбце и ясно: справа; в правую колонку.
В зависимости от конкретной ситуации и используемого браузера, также может быть полезно иметь «прослеживаемый» div после ваших двух столбцов:
<div class="col1"></div>
<div class="col2"></div>
<div class="clearBoth"></div>
div.clearBoth
{
clear: both;
height: 0px;
overflow: hidden;
margin: 0px;
padding: 0px;
}
Также вас может заинтересовать трюк clearFix для CSS: здесь