最近的工作是替一間公司寫一個 web application ,也算是大公司,正值他們的網站正要換新版本,所以我們的程式在版面上要分開兩個版本。在他們給我們的 HTML 檔裏,可喜的是見到其排版已由 table 轉變為 css,程式碼清減不少,變得有意義,好看得多了。
這是不是表示香港的公司開始認識到 css layout 的好處?未必,因為這是間跨國公司,我猜想要改變版面,用 CSS 是總公司的決定?而實際上,用 CSS Layout 可以令網站流量減少,寫得好的話更可以有 cross-browser 支持,增加網站的親和力,有很多好處。
然而,用 CSS Layout 的一個大難題,是各個瀏覽器的支持都不太一樣。現在仍然有最大市場佔有率的 IE6 ,其 CSS 支持已經為一所垢病好久,最要命的某幾個有關 Position, floating 等的不合標準顯示,令到想用 CSS Layout 的人 要用不少 Hack 去避過 IE bugs。雖然說 IE7 將會對 CSS 支持有大改進 , 但實際上只支持 Windows XP ,很多企業仍然是使用 Windows 2000,將要繼續使用 IE6 ,看來只好由用戶推動市場了,但要主要的人都使用 IE7 是幾年之後的事呢?
雖然如此,但前境也還是明朗的,各大瀏覽器也正加強各自對於 w3c 標準的支持, Safari 在剛過了 ACID2 後 , Konqueror 也通過了 ,新的 Firefox 也會 支持更多令人其待的 CSS 特性 如 columns, generated-content,再加上 IE7 本身改善 CSS 支持,可見在未來標準語法的網頁會更吃香吧?
當然,對於用戶來說,你用 table layout 還是 CSS layout 是沒有分別的,所以就算有足夠的瀏覽器支援,如果開發者沒有自覺,繼續用舊的方法去做事也沒有辦法。在外國, CSS layout 已經很普遍,很多大公司也應用了。而對於開發者來說,也有不少的國外資源可以參考。之前有感沒有太多中文的資源,但現在也有了 W3CN 這些有大量的外文翻譯文章,也有不少中文專題網站探討標準的應用,希望對於開發者來說會有用。
另一方面,網頁除了其原碼在進化,實際上功能也在進化中。由 Web 1.0 到 Web 2.0 ,用戶的參與會越來越多,不僅僅只是讀取。最近大熱的 Ajax 應用,增加了不少用戶介面的改進,大家已可在 GMail 、 Goolge Maps 感受到其威力。而 WhatWG 提出的 Web Forms 2.0 和 w3c 提出的 XHTML2 等等,也會大大改變 Web application 的開發。
網頁正在慢慢進化中,大家可有感到?
要香港公司意識到 Web Standard 的好處,尚有很大距離。就我所見,只有 Yahoo! HK(跨國公司)跟隨母公司改走 CSS layout.
不過香港政府已留意到 CSS layout 的大方向,有些網頁已改用 CSS layout…(只是有些…)
e.g.
http://www.isd.gov.hk/chi/tvapi/05_pe43.html
http://www.info.gov.hk/info/holiday_c.htm
http://www.info.gov.hk/isd/speech/sensp.htm
CSS的好處真是一用就不能再回頭了,可是有時總要顧慮百分之零點零一的客戶(如Netscape4)而讓我們不能用CSS,希望時代的進步會讓這些不快的經驗不用再發生吧