
(推荐教程:html教程)
SVG是一种图像文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形。本文就来为大家介绍7个提升网页SVG文件可访问性的方案。
1、作为图片使用的 SVG 文件
如果你的 SVG 是作为 的 src 引入的,务必为 添加 role="img" 属性:
@@##@@ @@##@@
如果不加 role="img",有些屏幕阅读器不会将 认作图片,只是读出 alt 值。
2、作为图标使用的 SVG
SVG 作为图标使用时,请使用 aria-hidden="true" 对访问设备隐藏,添加一个视觉上隐藏(visually-hidden)的兄弟元素作为图标的文本语义说明。
Close .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
如上,为 svg> 添加了 aria-hidden="true",让其对访问设备隐藏。之后的 .sr-only 就是所谓的视觉隐藏元素——只是视觉上看不见,但会被屏幕阅读读到。
3、IE 的 BUG
网页如果需要兼容 IE,那么在使用 的时候,需要显式添加 focusable="false" 属性。
...
原因是为:在 IE 浏览器上关于 SVG 的一个 BUG。大家知道,SVG 默认是不会被聚焦的,但在 IE 中,如果 SVG 包含在像链接、按钮这样的可聚焦元素里时,使用 Tab 是可以被聚焦的。这就导致父元素聚焦后,子元素又被聚焦的情况发生。
4、Safari 10 的 BUG
在 Safari 10 中,如果 中包含 ,务必在两者中间使用空格隔开。
...
否则,使用键盘 Tab 访问到这里的时候,跳不过去。不够之后的版本的已经修复了,如果你的网页需要支持 Safari 10 的话,就需要注意这个。
5、作为图片使用的 SVG
有时需要将 SVG 文件作为单独的图片使用,那么跟第二条类似的是,添加一个视觉隐藏元素作为语义说明使用。
之所以没有选择以 的形式添加说明,是因为如果 不是在可聚焦元素里使用的时候,有些屏幕阅读器不会正确朗读 aria-label 属性。
6、支持 IE8- 浏览器
在 IE8- 浏览器中, 中的 标签会被显示出来,因此需要支持此类浏览器的话需要隐藏它们。
... <!--
7、色彩对比
设计 SVG 图标时,一定要考虑到色弱用户、或在高对比黑色背景主题下(High Contrast theme)使用的用户。举一个例子,设计图标的时候,可以考虑使用实心的背景加上颜色鲜明边框。
更多编程相关知识,请访问:编程入门!!

以上就是浅谈网页中提升SVG文件可访问性的几种方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1548651.html
微信扫一扫
支付宝扫一扫