雪碧圖:sprite 是把多張圖片拼到一張圖中,提高性能的一種作法。把合併的圖片一次性加載到內存中,須要時只渲染一部分。css
咱們選擇gulp.spritesmith插件。npm
使用gulp時首先要在指定的任務目錄下本地安裝 gulp及任務須要的gulp插件。json
(1)創建package.json文件,能夠手動創建。也能夠使用 cnpm init,而後在命令行中寫(學用命令行)gulp
(2)在指定的任務目錄下本地安裝gulp及插件: cnpm install gulp --save性能
cnpm install gulp.spritesmith --savespa
(3)新建任務文件 gulpfile.js插件
而後咱們就能夠在這個文件裏寫咱們的代碼了。命令行
咱們將任務取名爲 sprite,3d
合成的素材存在imgs文件夾下:blog
合成後輸出的雪碧圖名字爲 sprite.png,對應的css爲sprite.css
輸出的存儲路徑爲result文件夾
效果:
對應的sprite.css
第二版代碼:
其中,padding表示合併時每一個圖片的間距
algorithm表示合成時的排列方式(有四種):
cssTemplate引入的是一個.css文件 ,用來設置更多的樣式:(#表示循環)csstemplate.css
效果:
對應的sprite.css