You need to add overflow:hidden attribute.
Also, it might be a good idea to style the file upload dialog itself because it will look different on every browser. Basically you need 'hide' the real file upload element and add custom styled element.
See an example here:
http://jsfiddle.net/smrB4/3/
HTML:
<div id='container'>
<div id='overlay'>
X
</div>
<input type='file' id="uploadImg" />
</div>
<br>
<span> ↑click here </span>
CSS:
#uploadImg{width:30px;opacity:0.0;}
#container{position:relative;overflow:hidden;width:30px;height:30px;}
#overlay{position:absolute;top:0p;width:28px;height:28px;background-color:#ddd;border:1px solid #000}