Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save jasonlbeggs/47b784dd87b508f250210e2450d25d2d to your computer and use it in GitHub Desktop.
Save jasonlbeggs/47b784dd87b508f250210e2450d25d2d to your computer and use it in GitHub Desktop.
# Built-in PurgeCSS Comes To Tailwind v1.4
Adam has been on fire the last couple weeks releasing new features and improvements to Tailwind. This week, Tailind v1.4 has been released with new color opacity utilities, an IE 11 target mode, and _built-in PurgeCSS support_.
## Color Opacity Utilities
The new color opacity utilities allow you to control the opacity of colors without explicitly defining the variations in your config file. Previously, if you wanted to to make a semi-transparent black background, you'd have to add something like `black-.5: 'rgba(0, 0, 0, 0.5)'` to the colors object in your tailwind.config.js file. Now, you can use `bg-black bg-opacity-50` to achieve the same thing directly in your markup!
Opacity utilities have been added for background colors, text colors, border colors, divide colors, and placeholder colors.
> Note: this feature is not fully compatible with IE 11, but does provide a graceful fallback.
## Built-in PurgeCss
PurgeCSS is a Post CSS plugin that can optionally be set up along with Tailwind to remove any unused CSS classes that aren't used anywhere in your markup. Pre-Tailwind v1.4, you'd have to manually set it up in your build pipeline and be sure to configure it to properly work with Tailwind. Tailwind v1.4 includes PurgeCSS by default! For the basic (most common setup), all you have to do is add a `purge` key to your `tailwind.config.js` file and pass it an array of paths to your markup.
```js
// tailwind.config.js
module.exports = {
purge: [
'./src/**/*.html',
'./src/**/*.vue',
'./src/**/*.jsx',
],
theme: {},
variants: {},
plugins: [],
}
```
In most cases, that set up will work great, but if you need to pass additional options to PurgeCSS you can easily do that. Read the ["Removing unused CSS"](https://tailwindcss.com/docs/controlling-file-size/#removing-unused-css) section in the docs to learn about all the options.
## IE 11 Target Mode
Some of the latest features introduced in Tailwind have not been fully IE 11 compatible because of the use of CSS variable and custom properties. Previously it's been left up to Tailwind users to remember which features those are and to not use them.
Tailwind v1.4 has introduced a new *experimental* IE 11 target mode that will remove features that aren't compatible with Tailwind or gracefully degrade them to simpler versions in some cases.
To use it, add `target: 'ie11` to your `tailwind.config.js` file and recompile your CSS.
```js
// tailwind.config.js
module.exports = {
target: 'ie11',
theme: {},
variants: {},
plugins: [],
}
```
Since this feature is marked as experimental, use it at your own risk. Adam has reserved the right to make breaking changes outside of normal semantic versioning policies.
## Conclusion
As always, read the [Release Notes](https://github.com/tailwindcss/tailwindcss/releases/tag/v1.4.0) and documentation for each of these new features to find out more!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment