10步大幅提升網站可訪問性
入職四週年,送上乾貨,10步大幅提升網站可訪問性。每一步都可以在20分鐘內完成。這篇文章也可以在20分鐘內看完。
第一步,檢查<title></title>,不允許空,不允許過長,簡潔明瞭。<title></title>是第一個可以訪問到內容的元素,所以一定要非常重視。當使用者切換瀏覽器Tab標籤的時候,一定最先聽到<title></title>標記的內容。Title一定要能代表當前頁面的主題。這裡的要求和SEO最佳實踐幾乎一致。
第二步,提供文字替代方案。走查網頁上所有的圖片、iframe、object,檢查這些元素是否填寫了適當的alt屬性或者title屬性的值,看看這些值是否可以描述這些元素的內容或者目的;heading元素是否標記了內容,而不僅僅是圖片或者背景圖片。比如,下圖可以標記為“騰訊ISUX公共帳號二維碼”。
第三步,檢查表單。是否有label標籤,這些label的for屬性是否通過填寫相應表單元素的id來彼此繫結;label的標籤包裹的範圍是否足夠大,一致滑鼠很容易的就能操作到;表單元素在被聚焦的時候是否有清晰的視覺反饋;提交和重置按鈕以及圖片按鈕是否標記了文字或者在title中寫明瞭該按鈕的作用。強調一下,比如一個按鈕的樣式是一個放大鏡,那麼替代文字的內容一定不是“放大鏡”,而是“搜尋”。
第四步,使用heading做資訊架構。輔助技術,特別是讀屏軟體,一般都會提供一個快捷鍵h,按h按鍵,焦點即可在heading之間切換,從而提高瀏覽效率。減輕讀屏軟體使用者瞭解當前頁面內容的障礙。雖然HTML5允許heading之間的巢狀,但是我絕對不推薦。
第五步,是否有blur()。輔助技術一般都是依靠焦點來獲取內容,所以這個事件從本質上就使得輔助內容無法獲得應用了此方法的元素。this.onfocus=this.blur()這個是最傻的一句程式碼了。
第六步,按Ctrl+或者command+檢視頁面是否可以被縮放。也許你因為某個效果使用了font-size-adjust:none,或者在viewport中設定了禁止使用者縮放,從而使得頁面無法縮放。老年人和使用11寸高檔筆記本的老闆可是非常喜歡使用放大頁面的功能的。
第七步,新增landmark角色。這個是成本最低的方法了,新增的方法就是給相應功能的元素新增role這個屬性,並賦予響應的landmark值。一共有8個值,一般你只能用到6個:banner(banner)、complementary(輔助內容區)、contentinfo(網站資訊和版權)、form(表單)、main(主內容區)、navigation(導航區)、search(搜尋區)。如果一個表單,他僅僅是提供搜尋功能,那麼就將role設定為search,而不是form。
第八步,設定快捷鍵。1是指向首頁的那個連結。Esc是停止播放音視訊,是停止,不是暫停。這兩個按鍵是迄今為止最能達成共識的快捷鍵了。另外,挖掘當前頁面的最重要的一個功能,是最重要的。然後在這個功能開始的元素或者包裝元素上設定一個快捷鍵,按照順序的話,就是2吧。accesskey=2。不要將同一個值設定給多個元素,也不要使用字母作為快捷鍵。另外聚焦的事件不要單單依賴瀏覽器本身,請使用js或者相應的鍵盤事件,然後聚焦給相應的元素。
第九步,觸發介面轉換需設定焦點。比如,點選一個按鈕,彈出了一個模態或者非模態的彈窗(不是瀏覽器彈窗),利用js把焦點移動到這個視窗的第一個有內容的DOM上;再比如,點選“返回首頁”按鈕,如果僅僅是連結的是#或者改變類似scrollTop的值,那麼也一定利用js將焦點移動到這個頁面的第一個有內容的DOM上。如果你通過一個按鈕觸發了一個元件視窗,在關閉這個元件視窗的時候,請把焦點重新移動回到觸發這個視窗的按鈕上。
第十步,填寫一個簡單的連結到之後,作為第一個內容元素。標記的內容是簡要的說明,說明你在這個頁面上提供的快捷鍵。然後這個連結可以指向一個更加豐富的無障礙幫助頁面,並且給這個連結設定accesskey=0。
相關文章
- 如何提高網站的可訪問性?網站
- 使用 CSS perfer-* 規範,提升網站的可訪問性與健壯性CSS網站
- 提升網頁 SVG 檔案可訪問性的 7 個方案網頁SVG
- 【知識分享】網站訪問速度可以從哪些方面提升網站
- 本地網站外網訪問網站
- 訪問github出現無法訪問此網站Github網站
- 網站訪問過程&HTML網站HTML
- 網站的可擴性展架構網站架構
- 手機能訪問網站,電腦不能訪問網站,以github.io為例網站Github
- SQL資料庫查詢最佳化技巧提升網站訪問速度的方法SQL資料庫網站
- .NET全域性靜態可訪問IServiceProvider(支援Blazor)IDEBlazor
- 微軟Cortana現漏洞:可繞過鎖屏密碼直接訪問網站微軟密碼網站
- 為什麼網站訪問速度很慢網站
- C++ 訪問說明符詳解:封裝資料,控制訪問,提升安全性C++封裝
- 論Java訪問許可權控制的重要性Java訪問許可權
- 如何解決網站限制IP訪問的問題網站
- Linux 中安裝redis 外網可訪問LinuxRedis
- 谷歌推出能自動生成高效能、高可訪問性、高SEO部落格網站的開源生成器谷歌網站
- Leancloud 快速搞定網站訪問量統計Cloud網站
- 提高網站訪問效能之Tomcat優化網站Tomcat優化
- 使用代理ip訪問網站卻失敗網站
- linux nginx 網站訪問提示502 Bad GatewayLinuxNginx網站Gateway
- 網站訪問變慢最佳化,淺析10種網站訪問變慢最佳化方法的作用網站
- 怎樣透過holer從外網訪問本地網站?網站
- 網站_域名_DNS_埠_web訪問過程網站DNSWeb
- 手機訪問電腦本地多個網站網站
- 如何提升網站速度網站
- 為什麼網站使用CDN加速後,網站訪問速度反而變慢了?網站
- 網站建設中如何提升網站特色網站
- 如何提升WAS儲存裝置管理的安全性及資料訪問的流暢性?
- 【Python實戰】用程式碼來訪問1024網站Python網站
- DNS與網站訪問有什麼聯絡?-VeCloudDNS網站Cloud
- Homestead 環境下,區域網域名訪問站點
- 恆訊科技分析:如何禁止用IP訪問網站?網站
- 在終端上訪問網站和下載檔案網站
- 阿里雲網站備案時網站無法訪問原因及解決辦法阿里網站
- 大幅提升海水淡化效率,新型石墨烯氧化物薄膜可更好淡化海水
- php的curl選擇其他網路卡的ip來訪問網站PHP網站
- 大型網站的可伸縮性架構如何設計?網站架構