JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5712092
  • Score
    100M100P100Q220414F
  • License MIT

PostCSS plugin to transform :not() W3C CSS level 4 pseudo class to :not() CSS level 3 selectors

Package Exports

  • postcss-selector-not

Readme

PostCSS Selector Not PostCSS Logo

npm install postcss-selector-not --save-dev

PostCSS Selector Not transforms :not() W3C CSS level 4 pseudo classes to :not() CSS level 3 selectors following the Selectors 4 Specification.

p:not(:first-child, .special) {
    color: red;
}

/* becomes */

p:not(:first-child):not(.special) {
    color: red;
}

[!CAUTION] Only lists of simple selectors (:not(.a, .b)) will work as expected. Complex selectors (:not(.a > .b, .c ~ .d)) can not be downgraded.

Usage

Add PostCSS Selector Not to your project:

npm install postcss postcss-selector-not --save-dev

Use it as a PostCSS plugin:

const postcss = require('postcss');
const postcssSelectorNot = require('postcss-selector-not');

postcss([
    postcssSelectorNot(/* pluginOptions */)
]).process(YOUR_CSS /*, processOptions */);