
我使用WAVE的可访问性检查程序,任何具有此特定插件的网站都会返回错误,因为在代码中有一个空链接,写为< a href =“#”>.有没有办法解决?我已经定义了一个Title属性,但#导致空链接错误仍然出现.
有些地方我已经看到这是完全可以接受的,其他地方声称这是一个问题.什么是实际答案和潜在的解决方法?
解决方法 更改< a href =“#”>到<按钮>并将您的事件处理程序放在上面.关于哪些元素属于哪里的更多上下文….
控制是否将我带到另一页?使用锚点
如果,当点击,点击或通过键盘或语音激活(或在此处插入新颖的交互方法)时,用户将被带到另一个URL(包括同一页面上的锚点),然后使用< a href =“[URL] “取代.确保你使用href属性并且它有一个真实的URL,而不是“#”(否则你可能依赖于JavaScript,这对于超链接来说根本不是必需的).如果href只指向“#”,那么你可能做错了.如果它指向一个命名锚作为渐进增强工作的一部分,那么这是完全有效的.
控件是否会改变当前页面上的内容?使用按钮
如果,当激活时,用户不会从页面移动(或移动到页面内的锚点),而是呈现新视图(消息框,布局更改等),然后使用< button> .虽然您可以使用< input type =“button”>,但您更有可能与预先存在的样式和后续开发人员(例如我)发生冲突.
控制提交表单字段吗?使用提交
如果在激活时,用户输入的信息(通过手动输入或通过选择屏幕上的项目)被发送回服务器,然后使用< input type =“submit”>.这最好生活在< form>中.如果您需要更多样式控制或不仅仅需要嵌入简单的文本字符串,请使用< button type =“submit”>代替.
键盘注意事项
想想键盘用户片刻.按Enter键可以触发超链接.但是按下回车键或空格键可以触发真正的按钮.当超链接具有焦点并且用户按下空格键时,该页面将滚动一个屏幕.如果没有更多要滚动,那么用户只会遇到任何事情.给定一组看起来相同的界面元素,如果某些界面元素使用空格键而某些界面元素不兼容,则不能指望用户对页面的行为方式有很大的信心.
我认为值得一提的是,空格键触发的事件仅在释放键时触发,而使用Enter键将在您按下键(释放它之前)后立即触发事件.
总结以上是内存溢出为你收集整理的html – 一个空元素(例如)是否可用于辅助功能?全部内容,希望文章能够帮你解决html – 一个空元素(例如)是否可用于辅助功能?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)