萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> 交互設計 >> 十條人人都能學會的易用網站設計代碼技巧

十條人人都能學會的易用網站設計代碼技巧

WebAIM團隊博客的一篇關於網站易用性的文章,比較基礎,簡單翻譯一下:

1. 給你的logo添加替代文本

這樣有兩個好處:屏幕閱讀器能識別logo圖片代表的含義,圖片未加載到時,也能告訴非視障用戶那裡是你的logo。

幾種方法:

1
<img src="logo.png" alt="前端界">

或者,你用背景圖來實現logo的話,也可以添加title屬性來實現:

1
2
<span title="前端界"></span>
</code>

當然,鏈接+背景圖的方式是最好的,但最好也加上title屬性:

1
<a title="前端界">前端界</a>

2.添加基本的Landmarks

ARIA Landmark是W3C定義的一套網站可用性規則,對於網站不同的模塊添加描述性的Landmark——或者直接叫role,有利於讀屏軟件更好的理解你的網頁,從而讓視障用戶更好的使用你的網站。

1
2
3
<nav role="navigation">
<div id="maincontent" role="main">
<form action="search.php" role="search">

等等,具體的規則請查看W3C的建議。

3.增強focus定義

其實很多網站會用盡一切辦法去掉浏覽器的:focus樣式,特別是對於IE浏覽器,其實,浏覽器默認帶上:focus樣式是有道理的,它能指示用戶當前的鼠標焦點位置是在哪裡。這個對於鍵盤流特別重要。

所以請不要去掉:focus樣式,甚至,你覺得默認的樣式不好看或者不統一(IE是虛線框,Webkit是高亮的實線框,並且,Safari是藍色,Chrome是橙色)也可以自己給定義一個高亮色:

1
2
3
4
a:focus{
    outline:1px solid red;
    background:yellow;
}

如果你的產品經理或者視覺設計師堅持要去掉focus狀態的話,把TA的鼠標拿走一天並告訴TA只能用Tab切換鏈接就好了。。。

4.定義必填表單項

aria-required屬性可以定義表單中的必填項——嗯,主要還是告訴讀屏軟件:

1
<input type="text" name="username" aria-required="true">

5.給你的頁面添加一個h1

原因很簡單,不只是有利於SEO,對網站整體的可用性和可讀性都很有幫助。另外,你沒有代碼潔癖麼?

6.定義表格的表頭

通常很多人習慣表格全部使用td標簽,其實,表格不止有hd標簽,還有thcolscope等。

所以簡單來說,表頭換成th標簽吧:

1
<th scope="col">Date</th>

7.定義表格描述

不要簡單的在表格前面/後面加個p了事了,表格有專用的caption標簽可用,就像圖片一樣。

1
2
3
4
<table>
    <caption>Class Schedule</caption>
<tr>
    ……

關於表格部分,強烈推薦重新發現HTML表格

8.避免“點擊此處”

雖然這樣的鏈接描述對普通人都無所謂,但是對讀屏軟件來說,是相當糟糕的,它其實是對視障用戶的一種干擾。

所以,直接把鏈接用到正地方吧。

9.去掉tabindex

曾經,很多人用tabindex來“增強”用戶體驗,但是這個屬性卻會打亂頁面的正常閱讀順序,對視障用戶是災難性的,對普通用戶也未必是友善的。

所以千萬不要濫用tabindex屬性。

10.在線檢測一下

呃,看到這裡發現其實是個廣告,但是如果能檢測出來網站可用性問題,也是件好事情,WebAIM開發的一個網頁工具,輸入URL就會自動檢測。測試了一下還不錯,看效果點這裡。

譯自:http://webaim.org/blog/10-easy-accessibility-tips/,請尊重版權,轉載請注明來源,多謝~~

copyright © 萬盛學電腦網 all rights reserved