文章詳情頁
javascript - 很多網(wǎng)頁前端都是一整個圖片裁剪出來很多小的素材比如按鈕圖標等這是為什么?手機端開發(fā)也會這么操作嗎?
瀏覽:140日期:2022-11-05 14:10:09
問題描述
比如微博的這個加v認證的圖標 為什么不讓UI分成一批文件而是在用的時候再裁剪?順便問一問在真正的開發(fā)中,手機端也會這么操作嗎?
問題解答
回答1:資源體積小, 數(shù)量多. 如果分成一批文件的話, 網(wǎng)頁加載的時候會產(chǎn)生大量的 http 請求. http 請求的建立是需要消耗設備性能和網(wǎng)絡帶寬的.
與其說為什么不分成一批文件, 倒不如說是為了提升新能而把小文件整合在一起發(fā)布.
回答2:可以搜一下 精靈圖 雪碧圖 sprite圖之類的關鍵字
回答3:這是CSS雪碧圖效果. 原理: 將小圖標和背景圖像合并到一張圖片上,然后利用css的背景定位來顯示需要顯示的圖片部分. 目的: 減少加載網(wǎng)頁圖片時對服務器的請求次數(shù),提高頁面的加載速度. 問題: 首次加載時, 內存消耗比較大, 而且會把不需要用到的圖片或者圖標也一起加載到內存中.
手機端一般不用雪碧圖效果. 原因是手機內存本來就不富裕, 手機端資源加載一般都是用到的時候在去加載到內存中(lazy load), 而且使用雪碧圖會提高圖片維護成本, 在使用圖片時需要更多的css操作來顯示指定的圖片. 同時在iOS中, 使用雪碧圖也加大了不同的手機圖片適配難度.
標簽:
JavaScript
上一條:javascript - 頁面如何獲取重定向的url?下一條:javascript - react-native在chrome調試工具中出現(xiàn)警告,并且不能使用react dev-tools
相關文章:
1. javascript - 請問 chrome 為什么會重復加載圖片資源?2. (python)關于如何做到按win+R再輸入文件文件名就可以運行?3. mysql - 分庫分表、分區(qū)、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處4. python - 能通過CAN控制一部普通的家用轎車嗎?5. javascript - react input file6. javascript - 請教如何獲取百度貼吧新增的兩個加密參數(shù)7. css3 - 微信前端頁面遇到的transition過渡動畫的bug8. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?9. html5 - 只用CSS如何實現(xiàn)input框的寬度隨框里輸入的內容長短自動適應?10. javascript - 關于css絕對定位在ios瀏覽器被橡皮筋遮擋的問題
排行榜

熱門標簽