PostCSS Pseudo Class Any Link lets you :any-link
pseudo-class in CSS,
following the Selectors specification.
nav :any-link > span {
background-color: yellow;
}
/* becomes */
nav :link > span, nav :visited > span {
background-color: yellow;
}
nav :any-link > span {
background-color: yellow;
}
From the proposal:
The
:any-link
pseudo-class represents an element that acts as the source anchor of a hyperlink. It matches an element if the element would match:link
or:visited
.
Add PostCSS Pseudo Class Any Link to your project:
npm install postcss postcss-pseudo-class-any-link --save-dev
Use PostCSS Pseudo Class Any Link to process your CSS:
const postcssPseudoClassAnyLink = require('postcss-pseudo-class-any-link');
postcssPseudoClassAnyLink.process(YOUR_CSS /*, processOptions, pluginOptions */);
Or use it as a PostCSS plugin:
const postcss = require('postcss');
const postcssPseudoClassAnyLink = require('postcss-pseudo-class-any-link');
postcss([
postcssPseudoClassAnyLink(/* pluginOptions */)
]).process(YOUR_CSS /*, processOptions */);
PostCSS Pseudo Class Any Link runs in all Node environments, with special instructions for:
Node | PostCSS CLI | Webpack | Create React App | Gulp | Grunt |
---|
The preserve
option determines whether the original :any-link
rule is
preserved. By default, it is preserved.
postcssPseudoClassAnyLink({ preserve: false })
nav :any-link > span {
background-color: yellow;
}
/* becomes */
nav :link > span, nav :visited > span {
background-color: yellow;
}