Рад са унутрашњим одстоцима padding у CSS

Нека неком елементу поставимо ширину од 100px. У CSS то уопште не значи да ће елемент заиста бити ширине 100px. Ствар је у томе што додавање padding проширује елемент и он постаје већи него што је назначено у својству width.

Хајде да погледамо на примеру. Направићемо два блока којима ћемо задати ширину од 100 пиксела. Притом другом блоку ћемо задати padding, а првом не. Као резултат други блок ће бити већи за величину одступа:

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

#elem2 {
  padding: 25px; /* задајемо унутрашње одстоје */
  width: 100px;
  height: 100px;
  background: #f1f1f1;
}

Результат: