style.top 和 translateY() 似乎都四舍五入到全像素值。有没有办法让图像停留在子像素上?
举个例子,这里我将一个包含图像的 div 每 100 毫秒向下移动 0.1 个像素,正如你所看到的,它每秒只跳跃一个完整的像素。 https://jsfiddle.net/je391bfr/
var i= setInterval(function() {this.myTimer(); },100);
var y=0;
var div=document.getElementById('mytest');
function myTimer(){
this.y+=.1;
console.log(this.y);
//var tr="translateY("+this.y+"px)";
var tr="translate(0,"+this.y+"px)";
this.div.style.webkitTransform=tr;
this.div.style.mozTransform=tr;
this.div.style.msTransform=tr;
this.div.style.oTransform=tr;
this.div.style.transform=tr;
}
注意:如果我愿意,我想要一些可以在子像素上停止的东西,而不仅仅是在动画期间在子像素上。