自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS Sprites工作原理及優(yōu)缺點(diǎn)

開發(fā) 前端
本文向大家描述一下CSS Sprites工作原理及優(yōu)缺點(diǎn),CSS Sprites技術(shù)早在2005年CSSZengarden的園主DaveShea就在ALA發(fā)表對該技術(shù)的詳細(xì)闡述。

你對CSS Sprites技術(shù)的工作原理和優(yōu)缺點(diǎn)是否了解,這里和大家分享一下,希望對你的學(xué)習(xí)有所幫助。

CSS Sprites工作原理及優(yōu)缺點(diǎn)
  
   CSS Sprites技術(shù)早在2005年CSSZengarden的園主DaveShea就在ALA發(fā)表對該技術(shù)的詳細(xì)闡述。

  原先只在CSS玩家之間作為一種制作方法流傳,后來出來個14RulesforFaster-LoadingWebSites,技術(shù)人員之間競相傳閱,其中第一條規(guī)則MakeFewerHTTPRequests就提到CSS Sprites。于是這個小妖精就火了起來,甚至出現(xiàn)了在線生成工具,勢不可擋也。近來國內(nèi)很多blog都提到CSS Sprites,最著名的例子莫過于google.co.kr下方的那幾個動畫。最新發(fā)布的YUI中,也是使用到CSS Sprites,幾乎都有的CSS裝飾圖都被一個40×2000的圖包辦。社交大站Facebook最近也使用了一個22×1150的圖片承擔(dān)了所有icon。一時間,CSS Sprites無處不在。

CSS Sprites工作原理

  我們知道,自CSS革命以降,HTML傾向于語義化,在一般情況下不再在標(biāo)記里寫裝飾性的內(nèi)容而是把呈現(xiàn)的任務(wù)交給了CSS。GUI是繽紛多彩的,少不了各種漂亮的圖來裝點(diǎn)。新時代的生產(chǎn)方式是,在HTML布滿各種各樣的鉤子(hook),然后交由CSS來處理。

  在需要用到圖片的時候,現(xiàn)階段是通過CSS屬性background-image組合background-repeat,background-position等來實(shí)現(xiàn)(題外話:為何我提現(xiàn)階段,因?yàn)槲磥頌g覽器若支持content則又新增另外的實(shí)現(xiàn)方法)。我們的主角是,你一定猜到了,就是background-position。通過調(diào)整background-position的數(shù)值,背景圖片就能以不同的面貌出現(xiàn)在你眼前。其實(shí)圖片整體面貌沒有變,由于圖片位置的改變,你看到只該看到的而已。就好比手表上的日期,你今天看到是21,明天看到是22,是因?yàn)樗膒osition往上跳了一格。所以你也大概了解到,CSS Sprites一般只能使用到固定大小的盒子(box)里,這樣才能夠遮擋住不應(yīng)該看到的部分。

CSS Sprites優(yōu)點(diǎn)

  我們從前面了解到,CSS Sprites為什么突然跑火,跟能夠提升網(wǎng)站性能有關(guān)。顯而易見,這是它的巨大優(yōu)點(diǎn)之一。普通制作方式下的大量圖片,現(xiàn)在合并成一個圖片,大大減少了HTTP的連接數(shù)。HTTP連接數(shù)對網(wǎng)站的加載性能有重要影響。

CSS Sprites缺點(diǎn)

  至于可維護(hù)性,這是一般雙刃劍??赡苡腥讼矚g,有人不喜歡,因?yàn)槊看蔚膱D片改動都得往這個圖片刪除或添加內(nèi)容,顯得稍微繁瑣。而且算圖片的位置(尤其是這種上千px的圖)也是一件頗為不爽的事情。當(dāng)然,在性能的口號下,這些都是可以克服的。

  由于圖片的位置需要固定為某個絕對數(shù)值,這就失去了諸如center之類的靈活性。

  前面我們也提到了,必須限制盒子的大小才能使用CSS Sprites,否則可能會出現(xiàn)出現(xiàn)干擾圖片的情況。這就是說,在一些需要非單向的平鋪背景和需要網(wǎng)頁縮放的情況下,CSS Sprites并不合適。YUI的解決方式是,加大圖片之間的距離,這樣可以保持有限度的縮放。

CSS Sprites總結(jié)

  性能壓倒一切。CSS Sprites是值得推廣的一種技術(shù)。尤其適宜用于FIR,比如固定大小的icon替換。為保持兼容性,圖片中的各個部分保持一定的距離是一種不錯的做法。

文章來源:Div-Css.net設(shè)計(jì)網(wǎng)參考:http://www.div-css.net/div_css/topic/index.asp?id=6933

【編輯推薦】

  1. CSS Sprites簡介以及優(yōu)缺點(diǎn)
  2. CSS中margin邊界疊加問題及解決方案
  3. CSS樣式表高效使用八大秘訣
  4. 創(chuàng)建和插入CSS樣式表秘笈
  5. 實(shí)現(xiàn)CSS垂直居中的五大方法及優(yōu)缺點(diǎn)
責(zé)任編輯:佚名 來源: div-css.net
相關(guān)推薦

2010-09-02 09:59:52

CSS SpritesCSS

2010-08-26 10:21:06

CSS Sprites

2019-03-13 09:00:00

Web應(yīng)用SPAJavaScript

2010-09-13 17:43:59

CSS單行內(nèi)容居中

2010-08-31 14:49:57

CSS居中

2021-03-17 08:00:00

NoSQL數(shù)據(jù)庫存儲

2021-03-04 09:00:00

架構(gòu)Lambda工具

2010-09-07 13:04:14

CSS Hack

2012-05-03 09:58:19

VLANVLAN劃分

2010-08-26 11:27:35

CSS居中

2010-09-02 13:53:58

CSS Sprites

2010-08-24 09:05:20

CSS+DIV

2010-08-23 10:50:39

DIV+CSS

2014-05-12 09:26:08

2010-08-27 13:58:06

DIV+CSS

2017-10-23 13:20:37

2023-04-21 11:34:44

人工智能

2012-03-31 10:12:55

CSSWEB

2019-10-10 17:22:07

多云CIO多云策略

2019-05-28 15:20:17

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號