文章图片

bug是这样的,准备两个div:

<div id="outer" style="width:200px;height:200px;background:red;position:relative">

    <div id="inner" style="width:100px;height:100px;background:green;position:absolute;top:0;left:0"></div>

</div>

你会在浏览器看到:

脚本:

var outer = document.getElementById('outer');

var inner = document.getElementById('inner');

setTimeout(function(){

    inner.style.WebkitTransform = 'translate(50px, 50px)';

}, 2000);

setTimeout(function(){

    inner.style.WebkitTransform = 'translate(0px, 0px)';

    inner.style.left = '50px'

    inner.style.top = '50px';

}, 4000);

脚本的作用是,在2秒的时候修改inner的transform,使之在水平和竖直方向各移动50px,应该在浏览器看到:

接着,在第4秒的时候,我们清除transform属性,换用top和left设置,理论上inner的位置应该不变,下面是chrome的效果:

但是在safari(Mac平台,PC平台未知