使用gulp-sass编译导致background相对路径出错问题
我使用gulp-sass插件编译scss文件,scss文件内有定义:
background: url(../../static/images/test.jpg)
编译后却变成了:
background: url(../images/test.jpg)
google了好久都没找到原因,希望有知道的朋友们告诉下解决办法,万分感谢!
下面贴gulp task代码:
gulp.task("build-sass", function () {
return gulp.src(config.scss)
.pipe($.plumber())
.pipe($.sass())
.pipe($.cleanCss({compatibility: 'ie8'}))
.pipe($.rename({extname: '.css'}))
.pipe(gulp.dest(config.dist + "/css"));
});
scss代码:
%bg-box{
background: url('../../static/images/test1.jpg') center no-repeat;
background-size: cover;
position: relative;
}
.bg-box-100{
@extend %bg-box;
width: 100px;
height: 120px;
}
输出结果:
.bg-box-100 {
background: url(../images/test1.jpg) center no-repeat;
background-size: cover;
width: 100px;
height: 120px;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
后面自己解决了。路径不要使用相对路径,直接使用绝对路径就好了:
如: background: url(
/static/images/test1.jpg
)改成绝对路径也算解决??
gulp-sass
单独运行没有错误,倒是gulp-clean-css
出现了相似的问题,加入参数{rebase: false}
就好了