forked from hero/www_hero
43 lines
1.7 KiB
Markdown
43 lines
1.7 KiB
Markdown
|
# tailwindcss/nesting
|
||
|
|
||
|
This is a PostCSS plugin that wraps [postcss-nested](https://github.com/postcss/postcss-nested) or [postcss-nesting](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-nesting) and acts as a compatibility layer to make sure your nesting plugin of choice properly understands Tailwind's custom syntax like `@apply` and `@screen`.
|
||
|
|
||
|
Add it to your PostCSS configuration, somewhere before Tailwind itself:
|
||
|
|
||
|
```js
|
||
|
// postcss.config.js
|
||
|
module.exports = {
|
||
|
plugins: [
|
||
|
require('postcss-import'),
|
||
|
require('tailwindcss/nesting'),
|
||
|
require('tailwindcss'),
|
||
|
require('autoprefixer'),
|
||
|
]
|
||
|
}
|
||
|
```
|
||
|
|
||
|
By default, it uses the [postcss-nested](https://github.com/postcss/postcss-nested) plugin under the hood, which uses a Sass-like syntax and is the plugin that powers nesting support in the [Tailwind CSS plugin API](https://tailwindcss.com/docs/plugins#css-in-js-syntax).
|
||
|
|
||
|
If you'd rather use [postcss-nesting](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-nesting) (which is based on the work-in-progress [CSS Nesting](https://drafts.csswg.org/css-nesting-1/) specification), first install the plugin alongside:
|
||
|
|
||
|
```shell
|
||
|
npm install postcss-nesting
|
||
|
```
|
||
|
|
||
|
Then pass the plugin itself as an argument to `tailwindcss/nesting` in your PostCSS configuration:
|
||
|
|
||
|
```js
|
||
|
// postcss.config.js
|
||
|
module.exports = {
|
||
|
plugins: [
|
||
|
require('postcss-import'),
|
||
|
require('tailwindcss/nesting')(require('postcss-nesting')),
|
||
|
require('tailwindcss'),
|
||
|
require('autoprefixer'),
|
||
|
]
|
||
|
}
|
||
|
```
|
||
|
|
||
|
This can also be helpful if for whatever reason you need to use a very specific version of `postcss-nested` and want to override the version we bundle with `tailwindcss/nesting` itself.
|
||
|
|