使用gulp-sass编译导致background相对路径出错问题

发布于 2022-09-04 00:59:18 字数 1016 浏览 22 评论 0

我使用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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

傲娇萝莉攻 2022-09-11 00:59:18

后面自己解决了。路径不要使用相对路径,直接使用绝对路径就好了:

如: background: url(/static/images/test1.jpg)

一萌ing 2022-09-11 00:59:18

改成绝对路径也算解决??

再浓的妆也掩不了殇 2022-09-11 00:59:18

gulp-sass 单独运行没有错误,倒是 gulp-clean-css 出现了相似的问题,加入参数 {rebase: false} 就好了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文