Mały trick który działa we wszystkich przeglądarkach w tym IE8 ;).
Robimy div o wymiarach 150px na 50px. Jeżeli do niego dodamy teraz padding, powiedzmy 5px oraz border 1px solid red;
Dostaniemy tak naprawdę div o wymiarach:
150px szerokości + 5px z każdej strony + 1px z każdej strony co da nam = 162px
na wysokość podobnie:
50px + 5px z każdej strony + 1px z każdej strony co da nam = 62px
No i z naprawą tego problemu przychodzi nam właśnie box-sizing. Do całego stylu dodajemy:
.box {
width: 150px;
height: 50px;
padding: 5px;
border: 1px solid red;
box-sizing:border-box;
}