91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

html中如何提升SVG文件可訪問性

發布時間:2020-12-19 09:33:04 來源:億速云 閱讀:191 作者:小新 欄目:web開發

小編給大家分享一下html中如何提升SVG文件可訪問性,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

SVG是一種圖像文件格式,它的英文全稱為Scalable Vector Graphics,意思為可縮放的矢量圖形。

1、作為圖片使用的 SVG 文件

如果你的 SVG 是作為 <img> 的 src 引入的,務必為 <img> 添加 role="img" 屬性:

<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/163671/sa_logo.svg"
     role="img" alt="Simply Accessible">

<a href="#">
  <img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/163671/sa_logo.svg"
       role="img" alt="Simply Accessible">
</a>

如果不加 role="img",有些屏幕閱讀器不會將 <img src="xxx.svg"> 認作圖片,只是讀出 alt 值。

2、作為圖標使用的 SVG

SVG 作為圖標使用時,請使用 aria-hidden="true" 對訪問設備隱藏,添加一個視覺上隱藏(visually-hidden)的兄弟元素作為圖標的文本語義說明。

<a href="#">
  <svg class="icon icon-close" viewBox="0 0 32 32" aria-hidden="true">
    <use xlink:href="#icon-close"></use>
  </svg>
  <span class="sr-only">Close</span>
</a>

<svg display="none" version="1.1" viewBox="0 0 32 32">
  <defs>
    <g id="icon-close">
      <path class="path2" d="M31.708 25.707v0l-9.708-9.708 9.708-9.708c0.104-0.104 
      0.18-0.227 0.229-0.356 0.134-0.355 
      0.058-0.771-0.229-1.058l-4.586-4.586c-0.286-0.286-0.702-0.361-1.057-0.229-0.131 
      0.049-0.254 0.125-0.357 0.229l-9.708 
      9.708-9.708-9.708c-0.105-0.104-0.227-0.18-0.357-0.228-0.356-0.133-0.771-0.057-1.057 
      0.229l-4.586 4.585c-0.286 0.286-0.361 0.702-0.231 1.058 0.051 0.13 0.125 
      0.252 0.23 0.356l9.709 9.708-9.708 9.708c-0.105 0.104-0.18 0.228-0.23 
      0.357-0.132 0.354-0.056 0.771 0.23 1.057l4.586 4.586c0.286 0.286 0.702 
      0.361 1.057 0.229 0.131-0.050 0.252-0.125 0.357-0.229l9.708-9.708 9.708 
      9.708c0.104 0.104 0.227 0.18 0.357 0.229 0.355 0.133 0.771 0.057 
      1.057-0.229l4.586-4.586c0.286-0.286 0.362-0.702 
      0.229-1.057-0.049-0.129-0.126-0.253-0.229-0.357z">
      </path>
    </g>
  </defs>
</svg>

<style>
  .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;
  }
</style>

如上,為 <svg> 添加了  aria-hidden="true",讓其對訪問設備隱藏。之后的 .sr-only 就是所謂的視覺隱藏元素——只是視覺上看不見,但會被屏幕閱讀讀到。

3、IE 的 BUG

網頁如果需要兼容 IE,那么在使用 <svg> 的時候,需要顯式添加 focusable="false" 屬性。

<svg focusable="false">...</svg>

原因是為:在 IE 瀏覽器上關于 SVG 的一個 BUG。大家知道,SVG 默認是不會被聚焦的,但在 IE 中,如果 SVG 包含在像鏈接、按鈕這樣的可聚焦元素里時,使用 Tab 是可以被聚焦的。這就導致父元素聚焦后,子元素又被聚焦的情況發生。

4、Safari 10 的 BUG

在 Safari 10 中,如果 <svg> 中包含 <use>,務必在兩者中間使用空格隔開。

<svg> <use>...</use> </svg>

否則,使用鍵盤 Tab 訪問到這里的時候,跳不過去。不夠之后的版本的已經修復了,如果你的網頁需要支持 Safari 10 的話,就需要注意這個。

5、作為圖片使用的 SVG

有時需要將 SVG 文件作為單獨的圖片使用,那么跟第二條類似的是,添加一個視覺隱藏元素作為語義說明使用。

<a href="https://simplyaccessible.com">
  <svg role="img" focusable="false"> <use xlink:href="#sa_logo"></use> </svg>
  <span class="sr-only">Simply Accessible</span>
</a>

之所以沒有選擇以 <svg role="img" aria-label="Simply Accessible"> 的形式添加說明,是因為如果 <svg> 不是在可聚焦元素里使用的時候,有些屏幕閱讀器不會正確朗讀 aria-label 屬性。

6、支持 IE8- 瀏覽器

在 IE8- 瀏覽器中,<svg> 中的 <desc> 標簽會被顯示出來,因此需要支持此類瀏覽器的話需要隱藏它們。

<!-- 下面語句的作用范圍從 IE5~IE9 -->
<!--[if !IE]> --> <desc>...</desc> <!-- <![endif]-->

7、色彩對比

設計 SVG 圖標時,一定要考慮到色弱用戶、或在高對比黑色背景主題下(High Contrast theme)使用的用戶。舉一個例子,設計圖標的時候,可以考慮使用實心的背景加上顏色鮮明邊框。

以上是“html中如何提升SVG文件可訪問性”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿拉善左旗| 河北区| 商水县| 佛教| 高淳县| 阜宁县| 中山市| 西峡县| 江津市| 荥阳市| 兴业县| 庆阳市| 天长市| 板桥市| 蕉岭县| 江津市| 荔浦县| 滕州市| 金寨县| 红原县| 新竹市| 德保县| 武平县| 水城县| 开阳县| 天气| 东丽区| 北安市| 鄢陵县| 鹿邑县| 平邑县| 新郑市| 龙岩市| 昆山市| 宜兰县| 田东县| 湘潭市| 太和县| 临泉县| 浦城县| 桂阳县|