Почему при масштабировании страницы верстка летит?
Каждому блоку задать width. Родительскому блоку задать width .  Задать position relative. 
Создать wrapper  в котором будет находиться элементы и задать ему margin 0 auto.
Не могу сказать что это нормально или нет.
Но пару советов могу дать!
Так как проблемы часта из за размера шрифтов при масштабировании самый лучший и простой вариант использовать %, em, rem.
REM - CSS 3 не везде поддерживается, лучше использовать % или EM.
Для расчета EM'ов используй препроцессоры LESS или SASS.
Как правило при верстке используют гиды "grid", они всегда должны быть в %.