надо лишь приложить немного фантазии, и все станет возможным =)
input[type="file"] {
/* основной контейнер выбора файла, от его размеров, на прямую зависит размер второстепенного контейнера, который у нас будет отвечать за визуализацию */
margin: 4px 6px;
cursor:pointer;
width: 100px;
height: 16px;
}
input[type="file"]:before {
/* второстепенный контейнер, который будет накрывать собой основной конте