天天看點

CSS 3實戰(全彩印刷)

CSS 3實戰(全彩印刷)

為什麼寫這本書

    CSS 3真可謂十年磨一劍,從10年前開始孕育,到今天逐漸引人矚目,前端工作者們的确等待了太長的時間。

    随着使用者要求的不斷提高、各種新型網絡應用的不斷出現,以及Web技術自身的高速發展,CSS 2在Web開發中顯得越來越力不從心,人們對下一代CSS技術和标準——CSS 3的需求越來越迫切。坦率地講,CSS 3的部分特性在幾年前就已經公布,但是由于各種主流浏覽器的“不作為”,特别是IE浏覽器的“消極态度”,讓很多前端工作者遺忘了CSS 3的存在。目前,CSS 3還在不斷完善中,很多功能還處于草稿階段,但是它展現出來的超強特性和功能已經讓人興奮不已。最近一兩年,各種主流浏覽器逐漸開始高調支援CSS 3的部分或者全部的功能特性,使得CSS 3又重新進入了廣大前端工作者的視野。特别是IE 9對CSS 3的全面支援,更是将網頁設計師帶入了全新的天地。社群裡各種關于CSS 3的讨論、資料和炫酷的應用開始爆炸式增長,廣大前端工作者也開始蜂擁而至。

    對于緊追前沿技術的前端工作者來說,充分了解目前和未來的Web标準和技術是十分必要的,學習和掌握CSS 3更是大勢所趨。為了幫助大家在适應趨勢和引領趨勢的過程中能走得更順利,受華章公司的盛情邀請,我特意編寫了這本CSS 3實戰教程,希望能起到抛磚引玉之效,為普及CSS 3盡綿薄之力。

本書面向的讀者

    首先,《CSS 3實戰》 非常适合具有豐富開發和設計經驗的前端工作者,因為這部分讀者應該已經對CSS 2了然于胸,通過本書,他們将能非常迅速而又有針對性地掌握CSS 3技術。

    其次,本書也适合尚處于初級階段的前端工作者,因為書中不僅系統而全面地介紹了CSS 3的各種功能和特性,而且還有大量實戰案例和最佳實踐,可供他們一邊學習理論,一邊進行實戰演練。

本書内容特色

     《CSS 3實戰》 是國内第一本系統、全面地講解CSS 3的圖書,它有兩個重要的特色:

     内容全面而詳盡。本書幾乎講解了CSS 3已經公布的所有可用新特性和新功能的用法、技巧和注意事項。

     案例豐富,實戰性強。本書幾乎為每個知識點都精心設計了1~2個實戰案例,能幫助讀者在實戰演練的過程中将理論知識融會貫通。

本書約定

     在《CSS 3實戰》 的閱讀過程中,需要注意下面幾個約定:

     初始值:即預設值,是當使用者不顯式聲明時元素所顯示的屬性值。需指明的是,屬性是元素的本質,而不是後天定義的标簽。

     适用于:說明了該屬性适用哪些元素,有些參考資料中所提供的适用元素清單很容易使讀者陷于迷茫之中,指導意義不大,妨礙快速參考。

     繼承性:這是CSS的基本特性,表明該屬性值是否會對目前引用元素的内嵌子元素具有影響力。繼承性對CSS布局而言具有重要的參考價值。

     百分比:表示該屬性是否可以用百分比(%)或者em為機關,以及如果可以用百分比或者em為機關時,如何才能把這些值換算成确定的值。例如,百分比是根據自身的寬度進行換算還是根據父元素的寬度進行換算,再或者是根據元素内文本字型的大小進行換算等。預設值為N/A ,表示百分比不符合或者不可用。

     媒介:說明該屬性适用于哪些裝置,例如,visual表示視覺媒體,如電腦螢幕、WAP(如手機)螢幕、列印機等。

     在沒有特别聲明的情況下,本書所指的浏覽器僅适用于Windows系統,不适用于Mac系統。

     Webkit引擎主要指蘋果的Safari浏覽器和谷歌的Chrome浏覽器,其私有屬性字首為-webkit-。

     Gecko引擎主要指代Mozilla的浏覽器,常指Firefox,其私有屬性字首為- moz。

     Presto引擎主要指代Opera浏覽器,其私有屬性字首為-o-。

     《CSS 3實戰》 所有案例在Chrome 4.0+或者Safari 4.0+版本的浏覽器中能夠獲得較好的表現。在IE 8及其以下的版本中,可能得不到預期的效果。

     為了友善閱讀,本書中的部分示例代碼僅提供了CSS樣式代碼和局部HTML結構代碼,讀者可以把這些CSS樣式代碼放在網頁頭部區域(即<head>标簽内),局部HTML結構代碼放在網頁主體區域内(即<body>标簽内)。

     《CSS 3實戰》 不是最終的CSS 3技術大全,CSS 3技術還在不斷完善和補充中,是以也無法確定本書中講解的所有知識将來都不會發生變化。建議讀者根據本書所提供的參考位址,即時擷取關于CSS 3的最新資訊。

CSS 3技術學習延伸

     學習CSS 3實際上并不難,難的是完全了解浏覽器的相容性問題。在還沒有完全普及CSS 3标準之前,我們隻能夠根據各主流浏覽器引擎所實作的CSS 3私有特性來實作相容。這勢必會導緻将簡單的問題複雜化,學習的成本和應用的難度也會相應增加。這一方面是因為很多CSS 3屬性使用比較煩瑣,如轉換、過渡、漸變等,另一方面是因為設計時還要考慮各浏覽器廠商的擴充(相容方法)。對于廣大前端工作者來說,下面這些參考資料也許會非常有用。

     CSS 3 Selectors Test:這是CSS 3.info網站提供的CSS選擇器測試頁面,它能夠詳細顯示目前浏覽器對所有CSS 3選擇器的支援情況。啟動測試,浏覽器會自動測驗,并以清單的方式顯示目前浏覽器對所有CSS 3選擇器的支援情況,點選每個CSS 3選擇器可以檢視結果和解釋資訊。

     When can I use:這是一個專業的測試網站,為廣大網頁設計師提供CSS 3、HTML5、SVG、JavaScript API技術的浏覽器支援情況檢測,它能夠準确顯示什麼時候能用CSS 3、HTML5、SVG,以及其他即将可用的頁面技術的浏覽器相容性清單。

     What's my IP:這也是一個專業的小網站,可用于檢測目前浏覽器對CSS 3、HTML5、Forms 2.0、CSS 3選擇器和Script等技術的支援情況。

     MooTools HTML5/CSS 3 feature detection:Modernizr是一個很有用的JavaScript庫,可以檢測HTML 5和CSS 3的原生支援,并提供一種維護良好控制級别的方法。如果你喜歡使用MooTools,可以使用MooModernizr(MooTools 版本的Modernizr)。

     CSS 3 Generator:這是一個CSS生成器,可以快速地以可視化的方式生成CSS 3新特性的樣式,不過該工具僅支援border radius、box shadow、text shadow、RGBA、@font-face、多列、box resize、box sizing 和outline特性,其他特性暫不支援。

     CSS 3 please!:這是跨浏覽器的CSS規則生成器,支援border-radius、box-shadow、漸變(線性)、rgba色彩、transform (旋轉)、transition和@font-face。

     CSS 3 Sandbox:提供了幾個CSS 3生成器,包括線性漸變、放射漸變、文字陰影、盒陰影、Transforms和文字描邊。

     CSS 3漸變生成器:為Firefox和Webkit浏覽器生成線性漸變。

     @font-face 生成器:來自于Font Squirrel的很好用的CSS 3 @font-face生成器。

     CSS 圓角生成器:生成用于Firefox、Webkit和标準CSS 3文法的border-radius屬性。

     CSS 3.0 參考手冊:這是由騰訊ISD WebTeam制作的一個CHM文檔,由于時間較早,稍顯陳舊,錯誤和遺漏比較多,不過對想了解CSS 3基本特性的初學者來說,還是有一定的參考價值。

緻謝

    《CSS 3實戰》 主要由成林編寫,同時參與資料整理及編寫的還有:馬本連、吳建華、江淑軍、李斌、李經鍵、鄭偉、田蜜、陸穎、王慧明、張炜、陳銳、王幼平、楊龍貴、蘇震巍、崔鵬飛等,在此對大家的辛勤工作表示衷心的感謝!

    由于時間有限,書中難免會有疏漏和不足之處,懇請廣大讀者提出寶貴意見。有關本書的任何問題,請發電子郵件到[email protected]。

作者  

2011年3月于北京  

《CSS 3實戰》

國内首本CSS 3專著,全面而深入講解CSS 3的最新特性和布局之道

實戰性強,全書囊括近百個精心設計的實戰案例,理論與實踐完美結合

資深Web前端工程師多年實踐經驗的結晶,3大社群聯袂推薦

【互動網購買 】【當當網購買 】【卓越網購買 】【豆瓣讨論 】

繼續閱讀