Ну, ответ скрыт в таблицах стилей по умолчанию в современных браузерах.Проблема относится к блочной модели CSS.
В основном, input [type = "text"], textarea, как правило, большинство других элементов имеют стандартный режим определения размера блока ('content-box').input [type = "submit"] использует режим определения размера рамки, который используется меньшим количеством элементов.
Добавьте эту строку CSS к описанному выше объявлению стиля:
box-sizing:content-box;
Thisпереопределит значения по умолчанию для таблицы стилей браузера и установит все эти элементы на content-box, что устранит проблему с размером*
box-sizing:content-box;
-moz-box-sizing:content-box;
http://jsfiddle.net/vXFDN/2/