如果用户没有通过省略 @ 或域来填写电子邮件地址 - 并且我们在提交 (example@example.com) 时没有提供正确电子邮件地址的示例,这是否不符合 WCAG 2.0 3.3 的成功标准。 3 关于错误建议?
我查看了许多主要网站和领先的网站,我只看到与缺少正确电子邮件地址有关的验证错误。看起来很多网站都使用占位符来指导用户格式化,但是,一旦提交,用户就没有明确的正确格式方向。
如果用户没有通过省略 @ 或域来填写电子邮件地址 - 并且我们在提交 (example@example.com) 时没有提供正确电子邮件地址的示例,这是否不符合 WCAG 2.0 3.3 的成功标准。 3 关于错误建议?
我查看了许多主要网站和领先的网站,我只看到与缺少正确电子邮件地址有关的验证错误。看起来很多网站都使用占位符来指导用户格式化,但是,一旦提交,用户就没有明确的正确格式方向。
在我看来,是的。这假定它因已知原因(格式等)而被拒绝,因此应将原因传达给用户。
可悲的是,查看主要站点并不是最佳实践的良好指标,只是表明他们没有遵循这个检查点(或者,更有可能的是,不知道它,WCAG 和所有相关的事情)。
这placeholder
从来都不是一个足够的标签,而且随着它的消失,它也很少足以用于说明。相反,与该字段相关的一些说明性文本(如果需要,可能与 ARIA 一起)可以更快地阻止错误,尽管错误消息仍然应该传达出了什么问题。
想想所有那些你输入密码的时候,在不遵循一些神秘的格式规则之后才被告知。提前告诉你并不能保证你会做对,但它可以减少每个人都做错的可能性。它也是您可以重复用于错误消息的内容。
WCAG 3.3.3 并没有真正失败
3.3.3 错误建议:如果自动检测到输入错误并且知道更正建议,则将建议提供给用户,除非它会危及内容的安全性或目的。(AA级)
这一点意味着您可以提供建议。例如,用户键入“user AT example.com”并且您建议“Do you mean user@example.com?”
在这里,您在 WCAG 3.3.1 中失败了:
3.3.1 错误识别:如果自动检测到输入错误,则识别出错误的项目,并以文字形式向用户描述错误。(甲级)
您必须以纯文本形式描述错误,这意味着“输入有效的电子邮件地址(例如:user@domain.com)”。
而且你可能还会担心3.3.2,就是缺少说明
3.3.2 标签或说明:当内容需要用户输入时,提供标签或说明。(甲级)
这意味着如果一个标签还不够,你必须给出说明(有效格式)。
请注意,当您对 HTML5input[type="email"]
元素使用浏览器自我验证过程时,情况可能会有所不同。因为在那里,浏览器辅助功能 API 应该提供明确的错误消息。