Есть ли способ заставить
выглядеть одинаково во всех браузерах с использованием некоторого CSS?
На Quirksmode.org есть интересная статья об этом: http://www.quirksmode.org/dom/inputfile.html
попробуйте это -
Подробнее - http://www.quirksmode.org/dom/inputfile.html
Вы можете попробовать использовать swfupload, проект с открытым исходным кодом, который встраивает крошечный файл Flash на страницу вместо входного файла... Вы можете использовать CSS, чтобы стилизовать кнопку, которая запускает загрузку Flash, как вам угодно.
Недостаток: с ним может быть сложно работать, и, конечно же, у ваших пользователей должна быть флешка.
Плюс: в диалоге загрузки можно выбрать сразу несколько файлов!