標簽,來克服HTML在版面和設(shè)計上的局限性。這種設(shè)計方式也會帶來妨礙可訪問性的代碼。
什么使得CSS更具有訪問性?
CSS在1996年出現(xiàn),用來解決上述的問題。通過使用CSS,你可以將一個HTML文件的內(nèi)容與有關(guān)它的表現(xiàn)形式或風(fēng)格的信息分離開來。這就使你可以應(yīng)用準確的格式化并達到想要得到的版面設(shè)計,而無需使用可能會讓屏幕閱讀器和專門的瀏覽器軟件產(chǎn)生困惑的HTML代碼。
例如,雖然HTML表格是用來排列表格式數(shù)據(jù)的,但他們也經(jīng)常被用來排列對齊一個頁面上的元素的。但是閱讀器和例如語音合成器的軟件要求有效的HTML代碼。因此當他們遇到一個頁面錯誤地使用了諸如一個表格的元素,產(chǎn)生的結(jié)果就會讓使用者感到莫名其妙。
CSS的另一個可訪問性的優(yōu)點就是它允許使用者定義他們自己的風(fēng)格單,這個風(fēng)格單可以與網(wǎng)站的風(fēng)格單共同工作。因此,例如一個使用者可以設(shè)定,所有通過
標簽定義的文本都應(yīng)該是1.5em Arial,即使這個網(wǎng)站的風(fēng)格單表示它應(yīng)該是18px Verdana Bold。
要注意用戶定義的風(fēng)格只有在用戶的風(fēng)格名稱與HTML頁面中的標簽相符時才會起作用,這是很重要的。這就將確保兼容性的責(zé)任交到了開發(fā)者的手中。例如,如果用戶的風(fēng)格單指定標簽應(yīng)顯示1.5em Arial文本,但是HTML頁面并不使用
標簽來從風(fēng)格單中調(diào)用一個風(fēng)格(也許它使用),用戶對于標簽定義的風(fēng)格將會被忽略。因此要確保你對你的標題和段落使用標準的HTML標簽,這將減少用戶定義的風(fēng)格單被忽略的機會。
開始
如果你是從頭開始建構(gòu)一個新的網(wǎng)站,那么通過CSS來改善可訪問性就會很容易。但你仍然可以輕松地將現(xiàn)有的網(wǎng)站轉(zhuǎn)變?yōu)镃SS形式。
步驟1:檢查現(xiàn)有代碼
為了更好地說明,我將用在表A中這個簡單的HTML代碼來代表一個使用CSS的頁面。這個例子假設(shè)頁面還沒有使用CSS,不過你也可以使用相似的方法來評價一個基于CSS的站點。主要的不同點就是大多數(shù)的改變將發(fā)生在CSS文件中而不是HTML文件中。
步驟2:從HTML中去掉所有特殊風(fēng)格標簽
要在這個頁面中加入CSS,我首先需要去掉所有要控制內(nèi)容表現(xiàn)的標簽。樣本代碼使用了字體標簽來定義字體外觀,風(fēng)格和顏色。去掉這些元素使得樣本代碼如表B所示。
步驟3:從HTML中去掉并替換任何錯用的標簽
現(xiàn)在我要去掉任何錯用的HTML標簽。在樣本代碼之中,一個表格用來在頁面的內(nèi)容創(chuàng)建一個15象素的邊緣,代碼還使用
標簽來創(chuàng)建段落。
在我去掉表格和
標簽之后,我將他們替換為適當?shù)臉撕。例如,我對頁面標題使用
標簽,用
標簽來顯示段落。使用這些標準HTML標簽使得之后的CSS的應(yīng)用變得非常容易,而且與用戶定義的風(fēng)格單更加兼容,F(xiàn)在的樣本代碼如表C所示。
步驟4:建構(gòu)一個CSS文件來覆蓋風(fēng)格信息
現(xiàn)在我已經(jīng)從HTML文件中去掉了所有風(fēng)格信息,我需要將這些信息轉(zhuǎn)移至一個CSS文件中。CSS文件僅僅是一個存為.css擴展名的文本文件,因此它可以在任何一個文本編輯器中進行創(chuàng)建。我使用的是Dreamweaver MX。
為了使在HTML中應(yīng)用CSS文件變得容易,我使用了名為p和h2的風(fēng)格來對應(yīng)標準HTML標簽。我使用了可變的字體大小,使得用戶可以輕松地在瀏覽器中增大或縮小字體大小。使用絕對大小可以防止瀏覽器對字體進行大小的調(diào)整(除了Netscape 6或以后的版本之外,它將不考慮絕對字體大。N疫在需要的地方指定了字體的種類,重量和顏色。
要重新產(chǎn)生由HTML標記代碼創(chuàng)建的版面,我需要將
和
標簽設(shè)置寬度為780象素。然而,由于我們的目的是將可訪問性最大化,因此我將去掉寬度設(shè)置使得頁面能符合瀏覽器窗口的大小。而且我將讓HTML頁面使用瀏覽器的缺省邊緣,而不是用原始代碼的
標簽來重新創(chuàng)建15象素的空白,這也使得其它例如打印機等的設(shè)備來使用它的缺省邊緣設(shè)置。
表D顯示了我創(chuàng)建的CSS文件。我將它命名為Mystylesheet.css并將它放置在網(wǎng)站根目錄下的一個風(fēng)格文件夾之中。
步驟5:在HTML文件上附加新的風(fēng)格單
在創(chuàng)建了CSS文件之后,我在HTML文件中插入了它的風(fēng)格。因為HTML文件已經(jīng)包括了所有在CSS文件中引用的標簽(和
),所以我只需要連接到HTML文件頭部的風(fēng)格單上就可以了。HTML文件從CSS文件中獲得風(fēng)格并將他們應(yīng)用到
和
標簽當中,如表E所示。
步驟6:驗證代碼
整個過程的最后一個步驟就是驗證HTML代碼的可訪問性。如果你對于CSS來說是個新手的話,你最好對CSS代碼也進行驗證。有很多種的工具都可以幫你對二者進行驗證。
我使用Dreamweaver MX來檢查我的樣本代碼的可訪問性。你可以通過在文件菜單中選擇Check Page然后選擇Check Accessibility來實現(xiàn)。任何錯誤或是警告都會顯示出來,還包括出現(xiàn)位置的行號以及對問題簡要的解釋。你可以在Dreamweaver MX的Reference工具中找到更多關(guān)于這些錯誤和警告的內(nèi)容。你只要從Dreamweaver的Windows菜單中選擇Reference然后從Book菜單中選擇UsableNet Accessibility Reference就可以了。
此外,World Wide Web Consortium (W3C)提供了超過30個的可訪問性評估工具的鏈接。W3C還提供了針對HTML和CSS的基于Web的免費驗證器。
可訪問性和簡單的管理
雖然這里給出的例子是很簡單的,但它說明了利用CSS使你的站點更加具有可訪問性是非常容易的。而且,對于CSS的使用不止這一個優(yōu)點而已。
基于CSS的網(wǎng)站要比僅僅只有HTML的網(wǎng)站要好管理得多。CSS文件中的風(fēng)格上的變化可以應(yīng)用到整個網(wǎng)站中而不需要改變網(wǎng)站中任何的HTML文件。而且CSS的使用縮小了每一個HTML文件的整體文件大小,因為所有的風(fēng)格信息都存儲在了CSS文件之中。
因此如果你想要改善可訪問性的話,將其視為一個機會,而不是一個障礙。要了解更多關(guān)于CSS和可訪問性的內(nèi)容,你可以去看一看World Wide Web Consortium中的Web Accessibility Initiative。
|