PostCSS Auto Reset
PostCSS plugin for automatic conditional rules reset. Useful for creation of
bullet-proof styles isolation in your extension. Can be used in combination with
postcss-initial.
.block {
padding: 1em;
}
.block:hover {
background-color: red;
}
.block__element {
margin: 1em;
}
.block--modifier {
border: 1em;
}
.block {
all: initial;
padding: 1em;
}
.block:hover {
background-color: red;
}
.block__element {
all: initial;
margin: 1em;
}
.block--modifier {
border: 1em;
}
Options
reset
Set of properties that we use to reset rules.
Takes string
or object
.
Possible values:
- 'initial' -
all: initial
; - 'sizes' - reset size properties.
Use object to create your own reset. CSS-in-JS notation is supported.
Example
postcss([ require('postcss-autoreset')({
reset: {
margin: 0,
padding: 0,
borderRadius: 0
}
})])
rulesMatcher
Rules filter function.
Takes string
or function
.
Possible values:
- 'bem' - reset all BEM blocks and element, ignore modifiers and pseudoclasses. (naming:
.block__element-modifier
); - 'suit' - reset all SUIT CSS components and parts, ignore modifiers, states and pseudoclasses.
You can define custom rules filter to fit your styles naming.
Example
postcss([ require('postcss-autoreset')({
rulesMatcher: (rule)=> rule.selector.match(/regexp/)
})])
Usage
postcss([ require('postcss-autoreset')])
See PostCSS docs for examples for your environment.