CSS Sprites其實就是把網頁中一些背景圖片整合到一張圖片文件中,再利用CSS的"background-image","background-repeat","background-position"的組合進行背景定位,background-position可以用數字精確地定位出背景圖片的位置。
優點:
①減少網頁的http請求,從而加快了網頁加載速度,提高用戶體驗。
②減少圖片的體積,因為每個圖片都有一個頭部信息,把多個圖片放到一個圖片里,就會共用同一個頭信息,從而減少了字節數。
③解決了網頁設計師在圖片命名上的困擾,只需對一張集合的圖片上命名就可以了,不需要對每一個小元素進行命名。
④更換風格方便,只需要在一張或少張圖片上修改圖片的顏色或樣式,整個網頁的風格就可以改變。
缺點:
①在寬屏,高分辨率的屏幕下的自適應頁面,你的圖片如果不夠寬,很容易出現背景斷裂。
②CSS Sprites在開發的時候,要通過photoshop或其他工具測量計算每一個背景單元的精確位置。
③在維護的時候比較麻煩,如果頁面背景有少許改動,一般就要改這張合並的圖片。
④精靈圖不能隨意改變大小和顏色。改變大小會失真模糊,降低用戶體驗,Css3新屬性可以改變精靈圖顏色,但是比較麻煩,並且新屬性有兼容問題,現在一般用字體圖標代替精靈圖。