Skip to content

File Upload

Modern drop zone for file attachment. Drag-and-drop or click to select. Shows file list with size and remove button.


When to use

Use only when file upload is strictly necessary for your solution. Clearly state accepted formats and max size.


Do's and don'ts

Do
Show accepted formats and max file size
Do
Validate file type and size before upload
Do
Give positive feedback when file is uploaded
Don't
Use file upload unless strictly necessary
Don't
Let users waste time uploading invalid files

Classes

ClassDescription
.file-upload__dropzoneDrop zone area
.file-upload__dropzone--dragoverActive drag state
.file-upload__dropzone--errorError state
.file-upload__dropzone--disabledDisabled state
.file-upload__iconUpload icon
.file-upload__text"Drag files here" text
.file-upload__hintFormat/size hint
.file-upload__inputHidden file input
.file-upload__filesFile list
.file-upload__fileSingle file row
.file-upload__filenameFile name (truncated)
.file-upload__filesizeFile size
.file-upload__removeRemove button

Accessibility

  • Hidden <input type="file"> for native file picker
  • Label associated via for/id
  • Error text with role="alert"
  • Remove buttons with descriptive aria-label

References