Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. HTML
  3. リファレンス
  4. 属性
  5. accept

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

HTML 属性: accept

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

accept 属性は、値としてカンマ区切りでファイル種別または固有ファイル種別指定子を取り、どのファイル種別を受け入れるかを記述します。

試してみましょう

<label for="movie">アップロードする映像を選択してください:</label><input type="file" name="movie" accept="video/*" /><label for="poster">ポスターを選択してください:</label><input type="file" name="poster" accept="image/png, image/jpeg" />
label {  display: block;  margin-top: 1rem;}input {  margin-bottom: 1rem;}

概要

accept プロパティはfile 型の<input> 要素のプロパティです。もとは<form> 要素で対応していましたが、file に置き換えられて削除されました。

与えられたファイル種別は複数の方法で識別される可能性があるため、特定の種別のファイルが必要な場合には、型指定子の完全なセットを提供したり、ワイルドカードを使用して任意の形式の型が許容されることを示したりすると便利です。

例えば、 Microsoft Word ファイルを識別できる方法は何通りもありますので、 Word ファイルを受け付けるサイトは<input> を次のように使用するかもしれません。

html
<input  type="file"   accept=".doc,.docx,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document" />

一方、メディアファイルを受け入れる場合は、そのメディア種別の任意の形式を含めるようにしたいかもしれません。

html
<input type="file" accept="audio/*" /><input type="file" accept="video/*" /><input type="file" accept="image/*" />

accept 属性は、選択されたファイルの種別を検証するものではありません。これはブラウザーがユーザーに対して正しいファイル種別を選択できるようにするためのガイドをするためのヒントを提供するだけです。ユーザーがファイルセレクターのオプションを切り替え、これを上書きして任意のファイルを選択し、不正なファイル種別を選択することは(ほとんどの場合)可能です。

このため、期待される要件をサーバー側で検証するようにしてください。

ファイル入力型に設定された場合、ネイティブファイルピッカーが開いたときに、正しいファイル種別のファイルのみを選択できるようにする必要があります。ほとんどのオペレーティングシステムでは、条件に合わず選択できないファイルが薄く表示されます。

html
<p>  <label for="soundFile">音声ファイルを選んでください:</label>  <input type="file" accept="audio/*" /></p><p>  <label for="videoFile">動画ファイルを選んでください:</label>  <input type="file" accept="video/*" /></p><p>  <label for="imageFile">画像をいくつか選んでください:</label>  <input type="file" accept="image/*" multiple /></p>

なお、最後の例では複数の画像を選択することができます。詳しくはmultiple 属性を参照してください。

固有ファイル種別指定子

固有ファイル種別指定子は文字列で、ユーザーが<input> 要素のfile 型で選択することができるファイルの種類を記述します。それぞれの固有ファイル種別記述子は、以下の形のうちの一つを取ります。

  • ピリオド (".") 文字から始まる有効なファイル拡張子で、大文字小文字の区別をしないもの。例えば、.jpg,.pdf,.doc などです。
  • 有効な MIME タイプの文字列で、拡張子なしのもの。
  • 文字列audio/* は「任意の音声ファイル」を意味します。
  • 文字列video/* は「任意の映像ファイル」を意味します。
  • 文字列image/* は「任意の画像ファイル」を意味します。

accept 属性は、カンマ区切りの 1 つ以上の固有ファイル種別指定子を含む文字列を値として取ります。例えば、標準的な画像形式と PDF ファイルの両方を含む、画像として表示できるコンテンツを必要とするファイルピッカーは、次のようになります。

html
<input type="file" accept="image/*,.pdf" />

file 入力の使用

基本的な例

html
<form method="post" enctype="multipart/form-data">  <div>    <label for="file">アップロードするファイルを選択してください</label>    <input type="file" name="file" multiple />  </div>  <div>    <button>送信</button>  </div></form>
div {  margin-bottom: 10px;}

これは次のような出力を生成します。

メモ:この例は GitHub でも見ることができます。 —ソースコードライブ実行を確認してください。

ユーザーの端末やオペレーティングシステムが何であろうと、ファイル入力には、ユーザーがファイルを選択するためのファイルピッカーダイアログを開くボタンが用意されす。

上記のようにmultiple 属性を含めることで、複数のファイルを一度に選択できるようになります。ユーザーは、選択したプラットフォームが許す任意の方法でファイルピッカーから複数のファイルを選択することができます(例えば、Shift キーまたはControl キーを押しながらクリックするなど)。<input> ごとに 1 つのファイルのみを選択させたい場合は、multiple 属性を省略してください。

受け付けるファイル種別の制限

多くの場合は、ユーザーが任意の種別のファイルを選択できるようにするのではなく、特定の種別のファイルを選択できるようにしたいものです。例えば、ファイル入力でユーザーがプロフィール画像をアップロードできる場合、JPEGPNG などのウェブ互換の画像形式を選択させたいと思うでしょう。

許容されるファイル種別は、accept 属性で許容されるファイル拡張子や MIME タイプのカンマ区切りのリストを取ることで指定することができます。いくつかの例を示します。

  • accept="image/png" またはaccept=".png" — PNG ファイルを受け付ける。
  • accept="image/png, image/jpeg" またはaccept=".png, .jpg, .jpeg" — PNG または JPEG ファイルを受け付ける。
  • accept="image/*"image/* MIME タイプで任意のファイルを受け付ける(また、多くのモバイル端末では、これを使用するとユーザーにカメラで写真を撮影させることができる。)
  • accept=".doc,.docx,.xml,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document" — MS Word 文書と思しきすべてのファイルを受け付ける。

もっと完全な例を見てみましょう。

html
<form method="post" enctype="multipart/form-data">  <div>    <label for="profile_pic">アップロードするファイルを選んでください</label>    <input      type="file"           name="profile_pic"      accept=".jpg, .jpeg, .png" />  </div>  <div>    <button>送信</button>  </div></form>
div {  margin-bottom: 10px;}

仕様書

Specification
HTML
# attr-input-accept

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp