我建立一個使用滾動插件,基本上動畫滾動網站。 我非常關心性能,就好像我在網站中插入一些圖像一樣,在滾動/動畫時看起來很不連貫。<img /> VS性能背景圖片(CSS)
我可以檢測圖像的主要問題是迴流/重繪問題,當圖像沒有正確的尺寸,因此縮放(我必須處理這個,我知道best practice)。
有了這個聲明(圖片將被縮小)。什麼應該更好,圖像元素或divs與這些圖像作爲背景作爲性能?
我做了這個jsFiddles,在我的chrome瀏覽器的內存工具,表明回地面圖像選項使用較少的內存。
<img />
:http://jsfiddle.net/ek6Xn/
<img src="..." />
background-image
:http://jsfiddle.net/ek6Xn/1/
<div></div>
div {
background:url(...);
background-size:100% 100%;
}
參考文獻:
- Difference in performance between img tag elements vs divs with background images?
- When to use IMG vs. CSS background-image?
- http://www.html5rocks.com/en/tutorials/speed/unnecessary-paints/
- http://updates.html5rocks.com/2013/02/Profiling-Long-Paint-Times-with-DevTools-Continuous-Painting-Mode
此外,搜索引擎和社交媒體嵌入系統不喜歡css背景圖像。 –
你能解釋一下爲什麼嗎? – Alvaro
他們只是不會緩存它們,或者,在Facebook嵌入的情況下,它不被視爲分享時的拇指圖像。的 –