PostCSS Pseudo Class Any Link
npm install postcss-pseudo-class-any-link --save-dev
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;
}
Usage
Add PostCSS Pseudo Class Any Link to your project:
npm install postcss postcss-pseudo-class-any-link --save-dev
Use it as a PostCSS plugin:
const postcss = require('postcss');
const postcssPseudoClassAnyLink = require('postcss-pseudo-class-any-link');
postcss([
postcssPseudoClassAnyLink()
]).process(YOUR_CSS );
Options
preserve
The preserve
option determines whether the original notation
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;
}
subFeatures
areaHrefNeedsFixing
The subFeatures.areaHrefNeedsFixing
option determines if <area href>
elements should match :any-link
pseudo-class.
In IE and Edge these do not match :link
or :visited
.
This increased CSS bundle size and is disabled by default.
postcssPseudoClassAnyLink({
subFeatures: {
areaHrefNeedsFixing: true
}
})
nav :any-link > span {
background-color: yellow;
}
/* becomes */
nav :link > span, nav :visited > span, nav area[href] > span {
background-color: yellow;
}
nav :any-link > span {
background-color: yellow;
}