8/23 - 100%, но остались вопросы.

.block1 {
    width: 196px;
    height: 36px;
}

.block2 {
    margin: 20px 0px 0px 120px;
    padding: 10px 0px 0px 40px;
    width: 96px;
    height: 46px;
}

.block3 {
    margin: 20px 0px 0px 20px;
    padding: 5px 0px 0px 5px;
    width: 171px;
    height: 31px;
    border: 12px solid white;
}
  1. Не совсем вопрос, недоумение… Никак не думал, что внутренние отступы влияют на границы блочного элемента (ширину и высоту). Это нормально?)
  2. Есть ли определенная последовательность свойств. Например, сначала, margin, затем padding… или это не принципиально с точки зрения семантики?
  1. Да, и рамка border тоже влияет на ширину и высоту. Это поведение стандартной блочной модели.
  2. Есть разные мнения о порядке свойств в правилах. Вручную их соблюдать не удобно. Для этого есть расширение для редактора CSS Comb. Он сортирует свойства в правилах по определенному принципу.

Спасибо!