У меня проблема с <input type="file" />
в Chrome - он не показывает текстовое поле рядом с кнопкой "просмотр". Каков наилучший способ показать обычный ввод файлов в Chrome?
HTML input type="file" в Chrome не отображает текстовое поле
Ответ 1
Это поведение по умолчанию в Google Chrome, а также в Safari. Прочитайте этот блог для решения
Ответ 2
Коробка есть, хотя она не разработана. Это может быть на "неправильной" стороне окна, но там.
Просто для этого - поставьте вокруг него границу - и вы увидите его там.
<input type="file" style="border: solid 1px red">
Кроме того, после выбора файла - вы получите его имя.
Ответ 3
<input type="file"/>
имеет различный внешний вид в зависимости от браузера. В некоторых браузерах это текстовое поле с кнопкой в других, это просто кнопка. Так как элемент не очень удобен, вы не можете его сделать.
Если вы действительно хотите, чтобы загрузка файла выглядела/отличалась от флэш-реализации по умолчанию, это путь.
Например, многие сайты используют sfwUpload. Для полной свободы стилей вы можете сделать его невидимым и поместить его поверх кнопки html с помощью позиционирования.
Другой способ работы с входами для загрузки файлов - сделать их невидимыми с помощью visibility: hidden
, расположить их поверх других элементов и тем самым отказаться от использования флеш-памяти, но реализации редко очень приятны, поэтому я бы не стал рекомендую.
Ответ 4
Элемент ввода файла отличается по-разному в зависимости от вашего браузера (и, вероятно, ОС - я только когда-либо использовал Windows). Если вы посмотрите на ту же страницу с элементом ввода файла в FF, IE и Chrome, в каждом браузере он будет выглядеть по-разному.
Почему вам нужно отображать текстовое поле? В FF и IE вы все равно не можете вводить в него текст, поэтому единственное использование - отобразить путь к файлу выбранного файла; который Chrome уже делает для вас, просто не в коробке.
Ответ 5
Я нашел ссылку от кого-то другого, у кого была эта проблема, решение здесь.
В нем конкретно не упоминается хром, но сафари делает то же самое. (Ссылка была принятым ответом, опубликованным в хромированном обсуждении)
edit: wow, второй раз этим утром, что я был googled другим членом! по крайней мере, вопросы получают ответ!
Ответ 6
Вы можете переопределить поведение по умолчанию и поменять внешний вид элемента управления alltogether. Нашел this сегодня, исследуя, как редактировать css при загрузке файла.