1

将多个 css 文件压缩为一个的最佳方法是什么?

下面的 gulp 任务在缩小和连接后导致两个问题:

  1. 我使用的引导字形图标已经消失。
  2. 我的一些风格被打破了。该任务似乎重新安排了某些样式的位置,例如.footer{...}放置在下方html{...}但现在位于上方html{...}。我怎样才能阻止它重新排列它们?

吞咽文件:

gulp.task('minify-css', function() {
    return gulp.src([
        'node_modules/bootstrap/dist/css/bootstrap.css',
        'vendor/jquery-ui-1.12.1/jquery-ui.min.css',
        'node_modules/bootstrap/dist/css/bootstrap-theme.css',
        'node_modules/jasny-bootstrap/dist/css/jasny-bootstrap.css',
        'css/style.css',
        ])
        .pipe(sourcemaps.init())
        .pipe(cleanCSS({debug: true}))
        .pipe(sourcemaps.write())
        .pipe(concat('bundle.min.css'))
        .pipe(gulp.dest('dist'));
});

有任何想法吗?

4

2 回答 2

1

我不知道它是否对您有帮助,但我认为您可以通过 gulp-sass 使用 SASS 预处理。在那里,您可以导入所有依赖项并让 gulp-sass 缩小结果。我的 gulp devstack 中有类似的方法。SASS (libsass) 可以导入 *.css 文件,例如在你的 main.scss 中你可以写

@import "path/to/file";

请注意,没有 .css 扩展名!如果你不熟悉 SASS,我建议给它一个机会。

于 2016-10-12T20:06:18.073 回答
0

这不是一个常见的解决方案,但有时它会有所帮助。我做两分钟。bundles: 'head.bundle.min.css' 和 'foot.bundle.min.css' 就像你做的那样。在 head.bundle.min.css 中,我收集了必须是第一个的样式。最后,我将两个最小捆绑包合并为一个。

于 2017-03-30T11:39:37.687 回答