- Fix order of removal of CSSOM rules when a browser supports
:has()natively
December 13, 2024
- Fix handling of stylesheets loaded after the polyfill was first started.
October 23, 2024
- Updated:
postcss-selector-parser - Updated
@csstools/selector-specificityto5.0.0(major)
August 3, 2024
- Updated: Support for Node v18+ (major).
- Updated
@csstools/selector-specificityto4.0.0(major)
May 13, 2024
- Updated
@csstools/selector-specificityto3.1.1(patch)
May 11, 2024
- Updated
@csstools/selector-specificityto3.1.0(minor)
March 31, 2024
- Updated
@csstools/selector-specificityto3.0.3(patch)
February 19, 2024
- Updated
@csstools/selector-specificityto3.0.2(patch)
December 15, 2023
- Fix type definitions
- Updated
@csstools/selector-specificityto3.0.1(patch)
July 3, 2023
- Change license to
MIT-0(read more about this change in the blog post) - Updated
@csstools/selector-specificityto3.0.0(major)
February 6, 2023
- Reduce the amount of duplicate fallback CSS.
January 28, 2023
- Improve
typesdeclaration inpackage.json
January 24, 2023
- Updated: Support for Node v14+ (major).
- Fix: Do not throw when a selector is invalid, show a warning instead.
- Fix: make
:has()unforgiving.:has(.foo, :some-invalid-selector)will no longer match elements that have children with.foo.
December 12, 2022
- Fix: correctly cleanup style rules when a browser has native support. backported
August 23, 2022
- Fix: assign global browser polyfill to
window,selfor a blank object.
July 8, 2022
- Breaking: removed old CDN urls
- Added: 'hover' options for browser polyfill
- Added: 'observedAttributes' options for browser polyfill
- Added: 'forcePolyfill' options for browser polyfill
- Added: Rules within
@supports selector(:has(something))won't be transformed. - Fix: Use base36 encoding to support all possible selectors.
- Fix: case insensitive matching.
- <script src="https://unpkg.com/css-has-pseudo/browser"></script>
+ <script src="https://unpkg.com/css-has-pseudo/dist/browser-global.js"></script>- <script src="https://unpkg.com/css-has-pseudo/browser.min"></script>
+ <script src="https://unpkg.com/css-has-pseudo/dist/browser-global.js"></script>February 5, 2022
- Rebuild of browser polyfills
January 12, 2022
- Fix compatibility with PostCSS
v8.2.x#147
This version is not officially supported but some tool providers pinned PostCSS to v8.2.x,
making it impossible for end users to have a working setup.
January 2, 2022
- Removed Sourcemaps from package tarball.
- Moved CLI to CLI Package. See announcement.
December 27, 2021
- Fixed: require/import paths for browser script
December 13, 2021
- Breaking: require/import paths have changed
- Changed: new polyfill CDN urls.
- Updated: documentation
Migrating to 3.0.0
PostCSS plugin :
- const postcssHasPseudo = require('css-has-pseudo/postcss');
+ const postcssHasPseudo = require('css-has-pseudo');Browser Polyfill :
- const cssHasPseudo = require('css-has-pseudo');
+ const cssHasPseudo = require('css-has-pseudo/browser');The old CND url is now deprecated and will be removed in a next major release. It will continue to work for now.
- <script src="https://unpkg.com/css-has-pseudo/browser"></script>
+ <script src="https://unpkg.com/css-has-pseudo/dist/browser-global.js"></script>September 16, 2021
- Updated: Support for PostCS 8+ (major).
- Updated: Support for Node 12+ (major).
June 10, 2019
- Updated:
postcss-selector-parserto 6.0.2 (major) - Updated:
postcssto 7.0.16 (patch) - Updated: Node 8+ compatibility (major)
December 11, 2018
- Fixed an issue where inaccessible rules would crash the library
November 26, 2018
- Improved CLI usage
November 26, 2018
- Fixed an issue where attribute names were not being properly encoded
November 25, 2018
- Replaced
setImmediatewithrequestAnimationFramefor future compatibility
November 25, 2018
- Fixed an issue where nested rules were not supported
November 21, 2018
- Further optimize script; from 775 bytes to 757 bytes
November 21, 2018
- Fixed an issue with the browser script not picking up added nodes
November 21, 2018
- Fixed the misnamed function name for the browser-ready script
November 21, 2018
- Improved browser compatibility with updated parsers, encoders, and decoders
- Improved performance by walking the DOM less
- Reduced script size by 9%; from 855 bytes to 775 bytes
November 20, 2018
- Initial version