You should use a combination of css and size attribute.
Applying the text properties to the style of input field with css will set the font face and font size, while size will set the length of input field.
.txt1 { font: 8pt verdana,arial,sans-serif; width: 70px }
<input type="text" class="txt1" size="5">
width: 70px will set the size of input field in IE, Opera and Netscape6, while size="5" along with font settings from class="txt1" will do this for NN4.x.
This way you can make form elements look (almost) exactly the same in all browsers.
I always use this trick and it never fails.
good luck