We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Using preset advanced, my css counter-set name gets minified away
counter-set
Correct minification.
In playground with Preset Advanced. https://cssnano.co/playground/#eyJpbnB1dCI6IlxuICAuY29oLWxpc3QtY29udGFpbmVyIHtcbiAgICBjb3VudGVyLXNldDogY3MtbmJyO1xuXG5cbiAgICAuY29oLWxpc3QtaXRlbSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogY3MtbmJyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKGNzLW5iciwgZGVjaW1hbC1sZWFkaW5nLXplcm8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4iLCJjb25maWciOiJjc3NuYW5vLXByZXNldC1hZHZhbmNlZCJ9
latest
advanced
Not system specific.
+-- autoprefixer@10.4.13 | `-- postcss@8.4.21 deduped +-- cssnano-preset-advanced@5.3.10 | +-- cssnano-preset-default@5.2.14 | | +-- css-declaration-sorter@6.3.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-calc@8.2.4 | | | `-- postcss@8.4.21 deduped | | +-- postcss-colormin@5.3.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-convert-values@5.1.3 | | | `-- postcss@8.4.21 deduped | | +-- postcss-discard-duplicates@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-discard-overridden@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-merge-longhand@5.1.7 | | | +-- postcss@8.4.21 deduped | | | `-- stylehacks@5.1.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-merge-rules@5.1.4 | | | `-- postcss@8.4.21 deduped | | +-- postcss-minify-font-values@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-minify-gradients@5.1.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-minify-params@5.1.4 | | | `-- postcss@8.4.21 deduped | | +-- postcss-minify-selectors@5.2.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-charset@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-display-values@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-positions@5.1.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-repeat-style@5.1.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-string@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-timing-functions@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-unicode@5.1.1 | | | `-- postcss@8.4.21 deduped | | +-- postcss-normalize-url@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-ordered-values@5.1.3 | | | `-- postcss@8.4.21 deduped | | +-- postcss-reduce-initial@5.1.2 | | | `-- postcss@8.4.21 deduped | | +-- postcss-reduce-transforms@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-svgo@5.1.0 | | | `-- postcss@8.4.21 deduped | | +-- postcss-unique-selectors@5.1.1 | | | `-- postcss@8.4.21 deduped | | `-- postcss@8.4.21 deduped | +-- postcss-discard-unused@5.1.0 | | `-- postcss@8.4.21 deduped | +-- postcss-merge-idents@5.1.1 | | `-- postcss@8.4.21 deduped | +-- postcss-reduce-idents@5.2.0 | | `-- postcss@8.4.21 deduped | +-- postcss-zindex@5.1.0 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- cssnano-preset-lite@2.1.3 | +-- cssnano-utils@3.1.0 | | `-- postcss@8.4.21 deduped | +-- postcss-discard-comments@5.1.2 | | `-- postcss@8.4.21 deduped | +-- postcss-discard-empty@5.1.1 | | `-- postcss@8.4.21 deduped | +-- postcss-normalize-whitespace@5.1.1 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- cssnano@5.1.15 | `-- postcss@8.4.21 deduped +-- gulp-jsdoc3@3.0.0 | `-- ink-docstrap@1.3.2 | `-- sanitize-html@1.27.5 | `-- postcss@7.0.39 +-- gulp-postcss@9.0.1 | +-- postcss-load-config@3.1.4 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- gulp-sourcemaps@3.0.0 | `-- @gulp-sourcemaps/identity-map@2.0.1 | `-- postcss@7.0.39 +-- postcss-assets@6.0.0 | +-- postcss-functions@4.0.2 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- postcss-combine-media-query@1.0.1 | `-- postcss@7.0.39 +-- postcss-import@15.1.0 | `-- postcss@8.4.21 deduped +-- postcss-normalize@10.0.1 | +-- postcss-browser-comments@4.0.0 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- postcss-preset-env@8.0.1 | +-- @csstools/postcss-cascade-layers@3.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-color-function@2.1.0 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-font-format-keywords@2.0.2 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-hwb-function@2.1.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-ic-unit@2.0.2 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-is-pseudo-class@3.1.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-logical-float-and-clear@1.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-logical-resize@1.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-logical-viewport-units@1.0.2 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-media-queries-aspect-ratio-number-values@1.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-nested-calc@2.0.2 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-normalize-display-values@2.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-oklab-function@2.1.0 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-progressive-custom-properties@2.1.0 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-scope-pseudo-class@2.0.2 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-stepped-value-functions@2.1.0 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-text-decoration-shorthand@2.2.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-trigonometric-functions@2.0.1 | | `-- postcss@8.4.21 deduped | +-- @csstools/postcss-unset-value@2.0.1 | | `-- postcss@8.4.21 deduped | +-- css-blank-pseudo@5.0.2 | | `-- postcss@8.4.21 deduped | +-- css-has-pseudo@5.0.2 | | `-- postcss@8.4.21 deduped | +-- css-prefers-color-scheme@8.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-attribute-case-insensitive@6.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-clamp@4.1.0 | | `-- postcss@8.4.21 deduped | +-- postcss-color-functional-notation@5.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-color-hex-alpha@9.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-color-rebeccapurple@8.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-custom-media@9.1.2 | | `-- postcss@8.4.21 deduped | +-- postcss-custom-properties@13.1.4 | | `-- postcss@8.4.21 deduped | +-- postcss-custom-selectors@7.1.2 | | `-- postcss@8.4.21 deduped | +-- postcss-dir-pseudo-class@7.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-double-position-gradients@4.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-focus-visible@8.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-focus-within@7.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-font-variant@5.0.0 | | `-- postcss@8.4.21 deduped | +-- postcss-gap-properties@4.0.1 | | `-- postcss@8.4.21 deduped | +-- postcss-image-set-function@5.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-initial@4.0.1 | | `-- postcss@8.4.21 deduped | +-- postcss-lab-function@5.1.0 | | `-- postcss@8.4.21 deduped | +-- postcss-logical@6.1.0 | | `-- postcss@8.4.21 deduped | +-- postcss-media-minmax@5.0.0 | | `-- postcss@8.4.21 deduped | +-- postcss-nesting@11.2.1 | | `-- postcss@8.4.21 deduped | +-- postcss-opacity-percentage@1.1.3 | | `-- postcss@8.4.21 deduped | +-- postcss-overflow-shorthand@4.0.1 | | `-- postcss@8.4.21 deduped | +-- postcss-page-break@3.0.4 | | `-- postcss@8.4.21 deduped | +-- postcss-place@8.0.1 | | `-- postcss@8.4.21 deduped | +-- postcss-pseudo-class-any-link@8.0.2 | | `-- postcss@8.4.21 deduped | +-- postcss-replace-overflow-wrap@4.0.0 | | `-- postcss@8.4.21 deduped | +-- postcss-selector-not@7.0.1 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- postcss-sort-media-queries@4.3.0 | `-- postcss@8.4.21 deduped +-- postcss@8.4.21 +-- stylelint-config-recommended-scss@9.0.1 | +-- postcss-scss@4.0.6 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped +-- stylelint-config-standard-scss@7.0.1 | `-- postcss@8.4.21 deduped +-- stylelint-order@6.0.3 | +-- postcss-sorting@8.0.2 | | `-- postcss@8.4.21 deduped | `-- postcss@8.4.21 deduped `-- stylelint@15.2.0 invalid: ">= 11.x < 15" from node_modules/stylelint-config-prettier +-- @csstools/selector-specificity@2.1.1 | `-- postcss@8.4.21 deduped +-- postcss-safe-parser@6.0.0 | `-- postcss@8.4.21 deduped `-- postcss@8.4.21 deduped
Reproducible in the playground using the following SASS:
.coh-list-container { counter-set: cs-nbr; .coh-list-item { counter-increment: cs-nbr; &::before { content: counter(cs-nbr, decimal-leading-zero); } } }
Which, using the default preset, gets turned into:
.coh-list-container{counter-set:cs-nbr;.coh-list-item{counter-increment:cs-nbr;&:before{content:counter(cs-nbr,decimal-leading-zero)}}}
But using the advanced preset gets turned into:
.coh-list-container{counter-set:cs-nbr;.coh-list-item{counter-increment:a;&:before{content:counter(a,decimal-leading-zero)}}}
The text was updated successfully, but these errors were encountered:
Confirmed. It's probably postcss-reduce-idents which act inconsistently. For reference the input is:
postcss-reduce-idents
The incorrect output is:
The last two occurrences get minified to a but the first one remains cs-nbr.
a
cs-nbr
Sorry, something went wrong.
No branches or pull requests
Describe the bug
Using preset advanced, my css
counter-set
name gets minified awayExpected behaviour
Correct minification.
Steps to reproduce
In playground with Preset Advanced. https://cssnano.co/playground/#eyJpbnB1dCI6IlxuICAuY29oLWxpc3QtY29udGFpbmVyIHtcbiAgICBjb3VudGVyLXNldDogY3MtbmJyO1xuXG5cbiAgICAuY29oLWxpc3QtaXRlbSB7XG4gICAgICBjb3VudGVyLWluY3JlbWVudDogY3MtbmJyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKGNzLW5iciwgZGVjaW1hbC1sZWFkaW5nLXplcm8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4iLCJjb25maWciOiJjc3NuYW5vLXByZXNldC1hZHZhbmNlZCJ9
Version
latest
Preset
advanced
Environment
Package details
Additional context
Reproducible in the playground using the following SASS:
Which, using the default preset, gets turned into:
But using the advanced preset gets turned into:
The text was updated successfully, but these errors were encountered: