Awesome
PostCSS Discard
PostCSS plugin to discard rules by selector, RegExp, or @type. Also usable to generate a diff from two stylesheets
Usage
const discard = require('postcss-discard');
postcss([discard(options)]);
See PostCSS docs for examples for your environment.
Options
Name | Type | Description |
---|---|---|
atrule | String , RegExp , Function | Match atrule like @font-face |
rule | String , RegExp , Function | Match rule like .big-background-image {...} |
decl | String , RegExp , Function | Match declarations |
css | String | CSS String or path to file containing css |
You can also pass a filter function for any of the supported types. The function is invoked with two arguments (node, value).
node
The currently processed AST node generated bypostcss
.value
Current value.
Return true if the element should be discarded.
Examples
Diffing stylesheets
postcss(discard({css: 'STYLES TO BE REMOVED'})).process('ORIGINAL CSS').css;
Discard by specifying rules
.bg {
width: 100%;
height: 100%;
background-image: url('some/big/image.png');
}
@font-face {
font-family: 'My awesome font';
}
@media print {
...;
}
postcss([
discard({
atrule: ['@font-face', /print/],
}),
]);
.bg {
width: 100%;
height: 100%;
}