ai / autoprefixer-core

autoprefixer-core was depreacted, use autoprefixer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

'transition: filter' does not generate prefixes

LPGhatguy opened this issue · comments

On the latest npm release of autoprefixer, using filter as a transition property doesn't seem to be generating a prefixed variant:

Input:

transition: filter 0.3s ease-in-out;

Output:

transition: filter 0.3s ease-in-out;
/* prefixed transition variants */

Expected Output:

transition: filter 0.3s ease-in-out, -webkit-filter 0.3s ease-in-out, -moz-filter 0.3s ease-in-out;
/* prefixed transition variants */

Autoprefixer already adds -webkit-filter to -webkit-transition or to just transition if there is no -webkit-transition.

@ai, I have very similar issue.

Config:

browsers: ['last 4 versions', '> 1%', 'Android >= 4', 'iOS >= 7']

Input:

.wrapper {
    transition: filter .3s;
    filter: blur(10px);
}

Output:

.wrapper {
    -webkit-transition: -webkit-filter 0.3s, filter 0.3s;
            transition: filter 0.3s;
    -webkit-filter: blur(10px);
            filter: blur(10px);
}

The thing is Chrome 44 supports unprefixed transition, but doesn't support unprefixed filter. So there is no transition for filter with current output.

screen shot 2015-07-11 at 23 56 08

Currently I use this workaround you mentioned in postcss/autoprefixer#299 (comment):

Input:

.wrapper {
    transition: -webkit-filter .3s, filter .3s;
    filter: blur(10px);
}

Output:

.wrapper {
    -webkit-transition: -webkit-filter 0.3s, filter 0.3s;
            transition: -webkit-filter 0.3s, filter 0.3s;
    -webkit-filter: blur(10px);
            filter: blur(10px);
}