Влияние padding и границы на расширение элементов в CSS

Если у блока есть и padding, и граница, то они будут вместе расширять блок:

html<div id="elem1"></div>
<div id="elem2"></div>
css#elem1 {
  width: 100px;
  height: 100px;
  background: #f1f1f1;
  margin-bottom: 20px;
}

#elem2 {
  width: 100px;
  height: 100px;
  background: #f1f1f1;
  padding: 25px; /* задаем отступы */
  border: 10px solid green;  /* задаем границу */
}

Результат: