An open API service indexing awesome lists of open source software.

https://github.com/postcss/postcss-will-change

PostCSS plugin to insert 3D hack before will-change property
https://github.com/postcss/postcss-will-change

Last synced: 9 months ago
JSON representation

PostCSS plugin to insert 3D hack before will-change property

Awesome Lists containing this project

README

          

# PostCSS Will Change

[PostCSS] plugin to insert 3D hack before [will-change] property.

This plugin uses `backface-visibility` to force the browser to create
a new layer, without overriding existing `backface-visibility` properties.
This 3D CSS hack is commonly done with `transform: translateZ(0)`,
but `backface-visibility` is used here to avoid overriding
the more popular `transform` property.

These hacks are required for browsers that do not support `will-change`.

Use this plugin only before [Autoprefixer]. It will add vendor prefixes
to `backface-visibility`.

[Autoprefixer]: https://github.com/postcss/autoprefixer
[will-change]: https://dev.opera.com/articles/css-will-change-property/
[PostCSS]: https://github.com/postcss/postcss

```css
.foo {
will-change: transform;
}
```

```css
.foo {
backface-visibility: hidden;
will-change: transform;
}
```


Sponsored by Evil Martians

## Usage

**Step 1:** Install plugin:

```sh
npm install --save-dev postcss postcss-will-change
```

**Step 2:** Check your project for existing PostCSS config: `postcss.config.js`
in the project root, `"postcss"` section in `package.json`
or `postcss` in bundle config.

If you do not use PostCSS, add it according to [official docs]
and set this plugin in settings.

**Step 3:** Add the plugin to plugins list:

```diff
module.exports = {
plugins: [
+ require('postcss-will-change'),
require('autoprefixer')
]
}
```

[official docs]: https://github.com/postcss/postcss#usage