CSS 3 + HTML 5 是未來的Web,它們都還沒有正式到來,雖然不少瀏覽器已經開始對它們提供部分支援。本文介紹了5 個CSS3 技巧,可以幫你實現未來的Web。目前這些技術不應該用在正式的客戶項目,它們更適合你的個人部落格站點,Web 設計社區,或不會有客戶向你投訴的場合。
1. 圓角效果
CSS3 新功能中最常用的一項是圓角效果,標準HTML 方塊物件是90度方角的,CSS3 可以幫你實現圓角。
-moz-border-radius: 20px;
-webkit-border-radius: 20px;
border-radius: 20px;
甚至單一角落也可以實現圓角,不過Mozilla 和Webkit 的語法稍有不同。
-moz-border-radius-topleft: 20px;
-moz-border-radius-topright: 20px;
-moz-border-radius-bottomleft: 10px;
-moz-border-radius-bottomright: 10px;
-webkit-border-toptop -rightright-radius: 20px;
-webkit-border-top-left-radius: 20px;
-webkit-border-bottom-left-radius: 10px;
-webkit-border-bottom-rightright-radius: 10px;
所支援的瀏覽器:Firefox, Safari , Chrome
2. 圖形化邊界
顧名思義,圖形化邊界就是允許使用圖片作為物件的邊界,語法如下:
border: 5px solid #cccccc;
-webkit-border-image: url(/images/border-image.png) 5 repeat;
-moz-border- image: url(/images/border-image.png) 5 repeat;
border-image: url(/images/border-image.png) 5 repeat;
這裡,border: 5px 設定了邊界的寬度,然後,每個邊界的圖片定義告訴瀏覽器,使用圖片的多大一部分來充當邊界。邊界圖片也可以針對每一條邊單獨設定:
border-bottom-rightright-image
border-bottom-image
border-bottom-left-image
border-left-image
border-top-left-image
border-top-image
border-top -rightright-image
border-right-image
支援的瀏覽器: Firefox 3.1, Safari , Chrome.
3. 區塊陰影與文字陰影
陰影效果曾經讓Web 設計師既愛又恨,現在,有了CSS3,你不再需要Photoshop,已經有網站在使用這個功能了,如24 Ways website.
-webkit-box-shadow: 10px 10px 25px #ccc ;
-moz-box-shadow: 10px 10px 25px #ccc;
box-shadow: 10px 10px 25px #ccc;
前兩個屬性設定陰影的X / Y 位移,這裡分別是10px,第3個屬性陰影定義陰影的虛化程度,最後一個設定陰影的顏色。文字陰影也可以這樣設定:
text-shadow: 2px 2px 5px #ccc;
支援的瀏覽器:Firefox 3.1, Safari, Chrome (只支援Box 陰影) ,Opera (只支援文字陰影).前3個數字表示紅綠藍三色的值,最後一個值代表透明度,另外,我們還可以使用opacity 實現透明度(目前的燈箱效果多使用該技巧- 譯者)
4. 使用RGBA 實現透明效果
目前,Web 設計中的透明效果主要靠PNG 圖片實現(但在IE 瀏覽器支援得併不好- 譯者),在CSS3,可以直接實現透明效果。
rgba(200, 54
, 54, 0.5); background: rgba(200
, 54, 54, 0.5); color: rgba(200, 54, 54, 0.5);
color: #000;
opacity: 0.5;
支援的瀏覽器: Firefox, Safari, Chrome, Opera (opacity) 以及IE7 (opacity, with fixes).
5. 使用@Font-Face 實現定製字體
Web 設計中有幾種字體是比較安全的,如Arial,Helvetica, Verdana, Georgia, Comic Sans (中文的,一般來說宋體是唯一安全的- 譯者),現在,使用CSS3 的@font-face 可以自己指定字體,不過因為牽扯到版權問題,實際能用的字體也是有限的(另外,體積龐大的中文字體也是一個不好解決的問題- 譯者)。
語法如下:
@font-face {
font-family:'Anivers';
src: url('/images/Anivers.otf') format('opentype');
}
支援的瀏覽器: Firefox 3.1, Safari, Opera 10 and Safari IE7 (需要一番周折,如果你不怕麻煩,可以在IE 實現這個功能,請參考: make font-face work in IE )
雖然CSS3 尚在開發中,上面提到的這些功能已經可以在部分瀏覽器中使用了,尤其是Safari。不幸的是,Safari 並非主流瀏覽器。
Firefox 目前擁有大量用戶基礎,另外,即將推出的Firefox 3.1 支援不少CSS3 效果,因為Firefox 用戶的升級動機很高,因此,會有不少用戶可以提前體驗CSS3 的新功能。
Google Chrome 今年剛發布,它基於Webkit 引擎,因此和Safari 很相似,因為Safari 主要用於Mac 市場,Chrome 可以正好彌補Windows 市場的空缺。
根據統計數據,2008年11月止,44.2% 的用戶使用Firefox, 3.1% 使用Chrome, 2.7% 使用Safari,意味著CSS3 的部分功能已經可以支援近半Internet 用戶,而在Web 設計圈子,這個比例可能更高,大約有73.6% (Blog.SpoonGraphics 提供的數據)
6. 負面因素
上面講述的這些CSS3 功能會給你的網站帶來出色的效果,但仍有一些負面的因素必須考慮:
Internet Explorer: 46 % 的Internet 無法看到這些效果,因此不要將這些東西用於重要的設計。同時保證,在這些效果不起作用的地方,有替代設計可用。
CSS 驗證問題: 這些CSS3 功能並非最終版本,目前不同的瀏覽器使用不同標籤實現這些功能,可能為你的Style Sheet 帶來驗證上的問題。
臃腫代碼: 因為不同瀏覽器要使用不同定義語法,最終將導致你的CSS 代碼十分臃腫。
不當的使用: 對這些效果的不當使用,可能帶來一些不良後果,陰影效果尤其如此。
本文國際來源:http: //www.smashingmagazine.com/2009/01/08/push-your-web-design-into-the-future-with-css3/
中文翻譯來源:COMSHARP CMS 官方網站(35公里譯)