Szerokość typu wejściowego = element tekstowy

Jak to się dzieje, gdy to robię:

<input type="text" style="width: 10px; padding: 2px"/>
<div style="width: 10px; border: solid 1px black; padding: 2px">&nbsp;</div>

wejście kończy się 2 px szerszym niż div w IE6 i FF3? czego mi brakuje?

EDYCJA: Jak wielu ludzi powiedziało, granica jest problemem. Jeśli ustawię border: 0px na wejściu, będzie on miał taką samą szerokość jak div z obramowaniem 0 px (sprawdzony przez zawinięcie go w graniczący SPAN).

Jednakże, gdy mierzę elementy w farbie, div ma wnętrze 14 px, zgodnie z oczekiwaniami (10 + 2 + 2). Wejście ma jednak wnętrze 16 px, a następnie granicę poza nim. Dlaczego to? Prawdopodobnie nie jest to błąd, ponieważ dzieje się to zarówno w IE6, jak i FF3, ale nie rozumiem tego.

questionAnswers(4)

yourAnswerToTheQuestion