float: left; уже сам по себе подразумевает display: block; )


Не обязательно border. Сдвигать меню для достижения обсуждаемого эффекта можно и при использовании background-image...
Конечно можно, но бордером-то проще

Сложность выполнения этой задачи зависит от разных факторов. Например, от "резиновости" колонок. Но нерешаемой CSS-раскладки не бывает...
Ну с нерезиновыми блоками всё просто... Я хотел растягивающийся во всех направлениях

Пока эти задачи, к сожалению, решаются только вставкой дополнительных элементов. И от этого никуда не денешься...
Да уж... Сидел долго... Ничего лучше, чем было не получилось...