Skip to content

Accessibility Violation: Incorrect autocomplete token for email input field #25974

@huangkevin-apr

Description

@huangkevin-apr

Issue Summary

The "Welcome to Ghost" Admin page contains an accessibility violation where the autocomplete attribute for the email input field uses an inappropriate token. According to WCAG Success Criterion 1.3.5 (Identify Input Purpose), the autocomplete value must match the specific purpose of the input to assist users with cognitive disabilities and to enable browser autofill features correctly.

Image

Impact

  • Assistive Technology: Screen readers may misidentify the purpose of the field.
  • User Experience: Browsers may fail to suggest the user's saved email address, forcing manual entry which increases the cognitive load and error rate.

Technical Details
The current implementation assigns autocomplete="username email" to an input field specifically defined as type="email". While an email address is often used as a username, for accessibility compliance and optimal autofill behavior, the token should reflect the data type being requested.

Steps to Reproduce

  1. Run Ghost in development mode
yarn dev
  1. Navigate to the Ghost Admin lives page
http://localhost:2368/ghost/
  1. Inspect the "Email address" input field
    Observe the autocomplete attribute is set to "username email".
<input name="email" autocomplete="username email" placeholder="jamie@example.com" autocorrect="off" id="email" class="ember-text-field gh-input ember-view" data-test-email-input="" type="email">
  1. Run the Accessibility Checker (e.g., IBM A11Y Checker)
Image

Ghost Version

Last

Node.js Version

v22.14.0

How did you install Ghost?

local

Database type

Other

Browser & OS version

Microsoft Edge & Windows 11

Relevant log / error output

Code of Conduct

  • I agree to be friendly and polite to people in this repository

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs:triage[triage] this needs to be triaged by the Ghost team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions