gulp-css-spriter图片精灵

1.在当前目录下安装npm install gulp-css-spriter

2.gulpfile.js中
var gulp = require(‘gulp‘),
spriter = require(‘gulp-css-spriter‘);
gulp.task(‘spritercss1‘, function() {    return gulp.src(‘./css/1.css‘)        .pipe(spriter({            ‘spriteSheet‘: ‘./dist/img/spritesheet.png‘,            ‘pathToSpriteSheetFromCSS‘: ‘../img/spritesheet.png‘        }))        .pipe(gulp.dest(‘./dist/css‘));});

  总结:路径不能乱写否则会覆盖原css,原css中的路径不对了,就不能生成图片精灵了。

-----------------------------------------------

若只是合并部分图片则,

摘自http://www.qianduancun.com/npm/43.html

1.node_modules\gulp-css-spriter\lib\map-over-styles-and-transform-background-image-declarations.js

48行开始的if-else if代码块中,替换为下面代码:

// background-image always has a url 且判断url是否有?__spriter后缀
if(transformedDeclaration.property === ‘background-image‘ && /\?__spriter/i.test(transformedDeclaration.value)) {

    transformedDeclaration.value = transformedDeclaration.value.replace(‘?__spriter‘,‘‘);
    return cb(transformedDeclaration, declarationIndex, declarations);
}
// Background is a shorthand property so make sure `url()` is in there 且判断url是否有?__spriter后缀
else if(transformedDeclaration.property === ‘background‘ && /\?__spriter/i.test(transformedDeclaration.value)) {

    transformedDeclaration.value = transformedDeclaration.value.replace(‘?__spriter‘,‘‘);
    var hasImageValue = spriterUtil.backgroundURLRegex.test(transformedDeclaration.value);

    if(hasImageValue) {
        return cb(transformedDeclaration, declarationIndex, declarations);
    }
}

 原css中这样写:

 

区别于:

这样只有带?_spriter的图片会合并。

时间: 2024-10-05 19:14:20

gulp-css-spriter图片精灵的相关文章

使用compass更高效的编辑css --- 图片精灵

compass是sass的一个库,关系相当于js中的jq.比较可惜的是compass的文档比较混乱 看的不太舒服,下面是compass的文档地址,有兴趣的可以去看看 http://compass-style.org/help/documentation/ 在这里我就不仔细讲compass的知识了,可以去阮一峰的博客里面有一遍compass的介绍,附上链接地址 http://www.ruanyifeng.com/blog/2012/11/compass.html 这里主要讲的是图片精灵,我们在网上

css图片精灵

先说一下这里为什么会用到图片精灵呢   因为浏览器每加载一张图片都会发送一次http请求  但对于一些小图片的话 就没必要分几张图片引入了 可以放一张大图上  然后使用图片精灵技术 在div上显示对应的图片  这样就提高了页面的响应速度 ↓↓↓↓↓ div{ width:200px; height:400px; margin:100px auto; background:url(img/47b1290d43fbbe81e7ddbcbb5c2dd8e7.png) 0 -100px no-repea

2017春 前端自动化(四) 图片精灵的使用

前段时间看了个,小伙伴的视频,针对里面的其中一点,"如何提升移动端性能"颇与想法下面,小侃一下:单从图片加载上,来提升下移动端性能. 即为:2017春 前端自动化(四)   图片精灵的使用 一款APP上有很多小图标.不管这些图标,是否在一定周期内,发生变化及更新,都不妨碍我们的图片精灵替换!通过工具"gulp.spritesmith"把这些小图标,整合到一张图片上,节省了加载速度与体积,而且,完全不需要设计师来核对像素.一行命令,我们可以直接生成精灵图片. 继续之前

【javascript/css】Javascript+Css实现图片滑动浏览效果

今天用js+css来做一个能够左右滑动的图片浏览效果. 首先写一个结构,包括需要浏览的两张图,以及能够点击来滑动图片的两个按钮. 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 5 <script type="text/javascrip

使用Visual Studio创建图片精灵(Image Sprite)——Web Essential

原文:Creating Image Sprite in Visual Studio - Web Essential 译者注:有关图片精灵的信息请参阅http://baike.baidu.com/view/2173476.htm. 通过本文,可以学习到如何使用Visual Studio的Web Essential扩展来创建图片精灵.假如你有一个网站,使用了大量的图像,且每个图像都是通过独立的请求加载的,那么请求的数量就会增加,这样,网站速度就会变慢.而这就需要进行优化,以加快网站速度. 图片精灵是

CSS Sprites图片处理

简介: CSS Sprites是一个网页图片处理方式,在国内都叫CSS精灵,css Sprites允许你将一个页面涉及到的所有零星图片都包含到一张大图中去,这样一来,当访问该页面时,载入的图片就不会像以前那样一幅一幅地慢慢显示出来了,这样可以降低客户端对服务器的请求,节省资源. 需要下载的工具: 腾讯鬼哥提供的: 1: CSS Sprites 样式生成工具(bg2css) 3.0 http://www.cssforest.org/blog/index.php?s=download 2:air文件

&lt;转载&gt;使CSS文字图片div元素居中方法之水平居中的几个方法

文字居中,文字垂直居中水平居中,图片居中,图片水平居中垂直居中,块元素垂直居中?当我们在做前端开发是时候关于css居中的问题是很常见的.情 况有很多种,不同的情况又有不同的解决方式.水平居中的方式解决的时候相对来说通过css比较容易设置,垂直居中相对比较棘手. 先来说一下水平居中的不同情况与不同解决方法吧. 1文本,图片等行内元素的水平居中方法呢比较简单.直接给父元素设置一个text-align:centent属性就可以实现元素的水平居中了. 2 确定宽度的块级元素水平居中怎么设置呢?设置方法也

前端技术之CSS实现图片垂直居中

前端技术之CSS实现图片垂直居中技术 maybe yes 发表于2015-03-14 18:52 原文链接 : http://blog.lmlphp.com/archives/86/The_front-end_technology_pure_CSS_to_achieve_image_vertically  来自 : LMLPHP后院 让 图片实现水平居中比较简单,只需要在父级容器中添加属性 text-align 为 center 即可.使用纯 CSS 实现图片的垂直居中,可以将图片包裹容器的 d

css 背景图片拉伸[转]

http://www.jeasyuicn.com/css-background-image-stretching.html background-image:url(bg.png); -moz-background-size: 100% 100%; -o-background-size: 100% 100%; -webkit-background-size: 100% 100%; background-size: 100% 100%; -moz-border-image: url(bg.png)

&lt;转载&gt;CSS解决图片过大撑破DIV的方法

DIV+CSS网页内容中如果插入大于DIV层宽度显示,过大的图片将会撑破网页宽度显示从而网页严重变形,您是否遇到过?这里DIVCSS5给大家介绍几种解决图片撑破撑开网页DIV层方法. 图片撑破宽度解决方法.CSS设置div层宽度图片大于设置div宽度后撑破div固定宽度解决方法方案,隐藏图片超出撑破宽度方法. 一.防止图片撑破DIV方法一 原始处理方法是将要展示的图片进行处理.比如你的DIV宽度为500px(像素),那你上传的图片或放入网页的图片宽度就要小于500px,也就是你图片需要图片软件剪