вам нужна кросс-браузерная верстка. Она делается с помощью поддерживаемых во всех браузерах свойствах (
сохраните). Для позиционирования элементов, обычно все элементы в плавающем стиле делаются (свойство float) и относительным позиционированием (relative).
Несколько месяцев назад тоже была проблема с макетами. Смотрите в сторону кросс-браузерной верстки, а дальше только опыт - пробуйте, смотрите.
Теперь по делу:
0. Весь контент на сайте можно расположить в Div'e с названием container (чисто символически) и выставить конкретное значение ширины, а чтобы было по центру - margin: 0 auto;
Почему конкретное значение? вы можете делать резиновый сайт, но проще сделать адаптивную верстку с несколькими вариантами (на @ media-queries )
В контейнере:
1. Левое меню вы можете сделать Div и выровнять по левой части (float:left), в который вложите опять же Div'ы, которые будут кнопками.
2. Правая часть ни что иное, как второй Div, в котором расположены другие div (с обязательно одинаковым свойством float). Каждый такой вложенный div является автоматически будет друг под другом. если будет проблема, смотрите в сторону box-sizing.
Это в общем-то основные сведения, чтобы отталкиваться. Вот пример, который я делал
сайт