1.寫在css里面的圖片是以背景圖形式存在的,而寫在html里的是以標簽形式存在的,在網(wǎng)頁加載的過程中,以css背景圖存在的圖片會等到結(jié)構(gòu)加載完成(網(wǎng)頁的內(nèi)容全部顯示以后)才開始加載,而html中的標簽是網(wǎng)頁結(jié)構(gòu)(內(nèi)容)的一部分會在加載結(jié)構(gòu)的過程中加載。換句話講,網(wǎng)頁會先加載標簽的內(nèi)容,再加載背景圖片,如果你用引入了一個很大的圖片,那么在這個圖片下載完成之前,之后的內(nèi)容都不會顯示。而如果用css來引入同樣的圖片,網(wǎng)頁結(jié)構(gòu)和內(nèi)容加載完成之后,才開始加載背景圖片,不會影響你瀏覽網(wǎng)頁內(nèi)容。
2.通常是非內(nèi)容的圖片就寫在css里面,如果是內(nèi)容性的圖片就寫在html里面,打個比方,你要做一個有漂亮邊框的相冊。那么修飾邊框的圖片就寫在css里面,相框里面的內(nèi)容照片就寫在html里面。網(wǎng)頁設(shè)計方向是表現(xiàn)層和內(nèi)容層分離,css管表現(xiàn),也就是顯示效果,html管結(jié)構(gòu),內(nèi)容結(jié)構(gòu)的劃分,這樣代碼要簡潔易維護一些。
3.瀏覽器讀取頁面,css背景圖和img圖片都會下載到本地緩存文件夾。至于緩存多久,每個緩存文件有個標記的,瀏覽器會判斷要不要向服務(wù)器重新發(fā)請求獲取資源。至于這個標記是怎么樣的,要看服務(wù)器上是怎么設(shè)置的。所以,css背景圖和img圖片在網(wǎng)頁中都可以重復(fù)使用。
4.圖片做為背景,在圖片沒加載的時候或者加載失敗的時候,不會有個圖片的占位標記,不會出現(xiàn)紅叉。