Notice: This is a work in progress. Please submit feedback or suggestions.

input[type="file"] element (html)

Screen reader support level: partial (16/40)

Voice Control support level: partial (6/9)

On this page

About this feature

Age of results

Results across all tests for this feature range from 10 months ago to a year ago. Detailed dates and version information can be found in associated tests.

Caution

Failing or partial results may be out of date. The oldest result is from a year ago. Consider running the associated tests and contributing results.

Expectations

What are expectations?

Screen Reader support by expectation

ExpectationJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
MUST convey its namesupportedpartialpartialpartialsupportedpartialpartialsupportedsupportedsupported
MUST convey its rolesupportedsupportedsupportedpartialsupportedsupportedpartialsupportedsupportedsupported
MUST convey the current valuenonepartialpartialnonenonepartialpartialnonesupportedpartial
MUST convey changes in valuenonesupportednonenonenonenonenonenonenonesupported
SHOULD provide shortcuts to jump to this rolesupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported

Voice Control support by expectation

ExpectationDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
MUST convey its namenonesupportedsupportednonesupported
MUST convey its rolenonesupportednot applicablesupportedsupported

Expectation: convey its name

Rationale:

A screen reader user needs to know what to enter.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Notes:

For form inputs - commands to read line by line (down and up arrows in most windows screen readers) will not always result in the name being explicitly conveyed when the virtual focus is moved to an input where the label is visually displayed and programmatically associated with the input. This is acceptable because the name is implied by the fact that it should be naturally found in the reading order. Some screen readers choose to not convey the name in these cases, likely in an effort to reduce verbosity.

Examples:

  • A screen reader will announce the name (label).
  • Voice control software will let the user say something like "click <name>" to activate the control.
Screen Reader support for 'MUST convey its name'
TestJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
Basic html file input testsupportedpartialpartialpartialsupportedpartialpartialsupportedsupportedsupported
Voice Control support for 'MUST convey its name'
TestDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
Basic html file input testnonesupportedsupportednonesupported

Expectation: convey its role

Rationale:

A screen reader user needs to know how they can interact with the element. Voice control software might use the role to help users activate controls that do not have a visible name.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: MUST

Examples:

  • A screen reader might be announce the role as "text input", "edit", "edit file", etc.
  • Voice control software will let the user say something like "click text box" to focus a the input or flag the role with a number.
Screen Reader support for 'MUST convey its role'
TestJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
Basic html file input testsupportedsupportedsupportedpartialsupportedsupportedpartialsupportedsupportedsupported
Voice Control support for 'MUST convey its role'
TestDragon Naturally SpeakingVoice Access (Android)Voice Control (iOS)Voice Control (MacOS)Windows Speech Recognition
ChromeChromeSafariSafariChrome
Basic html file input testnonesupportednot applicablesupportedsupported

Expectation: convey the current value

Rationale:

A screen reader user needs to know the current value of the input.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA
Screen Reader support for 'MUST convey the current value'
TestJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
Basic html file input testnonepartialpartialnonenonepartialpartialnonesupportedpartial

Expectation: convey changes in value

Rationale:

The user needs to know that the value was successfully changed.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: MUST
  • Voice Control: NA

Examples:

  • When the user enter texts, the screen reader will announce it back to them.
Screen Reader support for 'MUST convey changes in value'
TestJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
Basic html file input testnonesupportednonenonenonenonenonenonenonesupported

Expectation: provide shortcuts to jump to this role

Rationale:

Screen reader users might want to quickly navigate to elements of this type.

Strength of this expectation for different types of assistive technologies:

  • Screen Readers: SHOULD
  • Voice Control: NA
Screen Reader support for 'SHOULD provide shortcuts to jump to this role'
TestJAWSNarratorNVDAOrcaTalkBackVoiceOver (iOS)VoiceOver (macOS)
ChromeIEFirefoxEdgeChromeFirefoxFirefoxChromeSafariSafari
Basic html file input testsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupportedsupported