Skip to content
This repository has been archived by the owner on Dec 28, 2021. It is now read-only.

csstools/postcss-pseudo-class-any-link

Repository files navigation

⚠️ PostCSS Pseudo Class Any Link was moved to @csstools/postcss-plugins. ⚠️
Read the announcement

PostCSS Pseudo Class Any Link PostCSS Logo

NPM Version CSS Standard Status Build Status Support Chat

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.

'Can I use' table

Usage

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

Options

preserve

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;
}