Атрибут accept тега <input> — фільтр типів файлів
Встановлює фільтр на типи файлів, які ви можете відправити через поле завантаження файлів. Тип файлу вказується як MIME-тип.
Атрибут використовується тільки з елементами управління, які дозволяють користувачеві вибрати файл (<input type = "file">). При натисканні на кнопку в переліку всіх файлів будуть відображатися тільки доступні для вибору (завантаження).
Приклад вибору зображення для завантаження.
автор: с3с
Загальний опис
автор: NagarD
- Порада
-
Атрибут
автор: с3сacceptможе використовуватися тільки при<input type="file">. - Порада
-
Не використовуйте цей атрибут як інструмент перевірки. Завантажений файл повинен бути перевірений на сервері.
автор: с3с - Нотатка
-
Щоб вказати більше одного значення, розділяйте значення комами (наприклад,
автор: с3с<input accept="audio/*,video/*,image/*" type="text">.
Синтаксис
<input accept="file_extension|audio/*|video/*|image/*|media_type">
Атрибут accept може отримувати 5 значень:
-
file_extension -
розширення файлу, починаючи з крапки, наприклад: .gif, .jpg, .png, .doc
автор: с3с -
audio/* -
Всі звукові файли дозволено завантажувати
автор: с3с -
video/* -
Всі відео файли дозволено завантажувати
автор: с3с -
image/* -
Всі файли зображень дозволено завантажувати
автор: с3с -
media_type -
Допустимий тип даних, без будь-яких параметрів. Подивіться на типи IANA Media для повного списку стандартних типів.
автор: с3с
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| 1 | 1 | 1 | ≤12.1 | 12 | 6 |
| Переглядач | ||||
|---|---|---|---|---|
| 4.4 | 18 | 4 | 1 |
Приклади
+ запропонувати свій приклад у пісочниці
Найпростіший приклад використання HTML атрибута accept теґа <input>
<form>
<p><strong>Виберіть картинку</strong></p>
<p><input type="file" name="img" accept="image/*">
<br>
<p><strong>Виберіть аудіо</strong></p>
<p><input type="file" name="img" accept="audio/*">
<br>
<br>
<input type="submit" value="Надіслати"></p>
</form>
П'ять полів вибору файлу з різними accept. Натисніть кнопку вибору в кожному — системний діалог показує різні набори файлів. Останнє поле без атрибута: у ньому видно всі файли.
HTML
<form>
<p><label>Лише зображення — <code>accept="image/*"</code><br>
<input type="file" accept="image/*"></label></p>
<p><label>Лише PDF — <code>accept="application/pdf,.pdf"</code><br>
<input type="file" accept="application/pdf,.pdf"></label></p>
<p><label>Таблиця CSV — три значення одразу, бо система часом видає свій MIME<br>
<input type="file" accept=".csv,text/csv,application/vnd.ms-excel"></label></p>
<p><label>Кілька картинок одразу — <code>multiple</code><br>
<input type="file" accept="image/png,image/jpeg" multiple></label></p>
<p><label>Без <code>accept</code> — у діалозі всі файли<br>
<input type="file"></label></p>
</form>
<p class="note">У діалозі завжди можна перемкнутися на «Усі файли», а файл ще й перетягують мишкою. Тому це фільтр для зручності, а не перевірка: тип і розмір однаково перевіряють на сервері.</p>
CSS
p { margin: 0 0 14px; }
label { display: block; }
input[type="file"] { margin-top: 4px; }
code { background: #f2f2f2; padding: 0 3px; }
.note { border-left: 3px solid #c00; padding-left: 10px; color: #444; }
Різниця між HTML 4.01 та HTML5
В HTML5 доступно в якості значення вказувати audio/ для вибору всіх звукових файлів, video/ для відеофайлів image/* для всіх графічних файлів.
Коментарі
Коментарів ще немає — будьте першим!