addyosmani / addyosmani/gulp-uncss-task

CSS gets duplicated

Aberta
#3 5 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
JavaScript
Estrelas
61
Forks
9
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

Addy recommended I open an issue for this, so here goes.

Let's say I have a single HTML page that references a single stylesheet, and I want to check that stylesheet for unnecessary rules. I figured the following trivial gulpfile would work:

``` javascript
var gulp = require("gulp");
var uncss = require("gulp-uncss-task");

var src = "src";
var target = "target";
var index = src + "/index.html";

gulp.task("default", function() {
gulp.src(index)
.pipe(gulp.dest(target));
gulp.src(src + "/style.css")
.pipe(uncss({
html: [index]
}))
.pipe(gulp.dest(target));
});
```

Unfortunately, running `gulp` results in `target/style.css` containing the optimized content of `src/style.css` _twice_.

If I remove the reference to `style.css` from `src/index.html`, the resulting CSS is fine. However, adding a `link` element after UnCSS processes the HTML is tedious and doesn't seem like the right approach, especially since UnCSS figures out the list of stylesheets from the HTML in the first place.

I've tried passing an empty `stylesheets` array to the `uncss` function, as well as setting the `csspath` to `"./"`, but that didn't change anything. I also tried putting the source HTML and CSS in the package root directory, because I thought it might be something path-related; no luck though.

To confirm, I tested with UnCSS itself. The following code works as expected, returning the optimized CSS a single time:

``` javascript
require('uncss')(['src/index.html'], {}, function(output) {
console.log(output);
});
```

I'm using gulp 3.2.2 and gulp-uncss-task 0.1.0, on Windows 8 x64.

For the sake of completeness, here are my HTML and CSS:

``` html

Hello, world

```

``` css
p {
font-family: Verdana;
}

div {
color: blue;
}
```

Am I missing something obvious? Thanks.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.