IOS Safari转换变换无法正常工作

ui-*_*att 7 css safari css3 vendor-prefix css-transitions

每当我似乎应用一些代码时,例如使用最新的iOS Safari浏览器移动div,它实际上并不在两个规则集之间转换.我已经尝试过更改为使用除百分比值之外但仍然到今天,当我使用transition: transform;任何translate应用的属性时,我从来没有能够使它工作.

我正在使用正确的前缀和检查支持,应该没有问题.

http://caniuse.com/#search=transition

http://caniuse.com/#search=translate

的jsfiddle

$('button').on('click', function() {
    $('.mydiv').toggleClass('added-class');
});
Run Code Online (Sandbox Code Playgroud)
.mydiv {
    display: inline-block;
    width: 100px;
    height: 50px;
    background-color: red;

    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -moz-transition: transform 0.6s ease-out;
    -o-transition: transform 0.6s ease-out; 
    -webkit-transition: transform 0.6s ease-out;
    transition: transform 0.6s ease-out;
}

.added-class {
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="mydiv"></div>
<button type="button">Toggle class</button>
Run Code Online (Sandbox Code Playgroud)

Ser*_*sov 24

老版本iOS的Safari浏览器只支持供应商前缀属性和值transitiontransform,所以你应该使用-webkit-transition: -webkit-transform,而不是-webkit-transition: transform:

的jsfiddle

$('button').on('click', function() {
    $('.mydiv').toggleClass('added-class');
});
Run Code Online (Sandbox Code Playgroud)
.mydiv {
    display: inline-block;
    width: 100px;
    height: 50px;
    background-color: red;

    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);

    -webkit-transition: -webkit-transform 0.6s ease-out;
    -moz-transition: transform 0.6s ease-out;
    -o-transition: transform 0.6s ease-out;
    transition: transform 0.6s ease-out;
}

.added-class {
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transform: translateY(100%);
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="mydiv"></div>
<button type="button">Toggle class</button>
Run Code Online (Sandbox Code Playgroud)