【发布时间】:2013-03-06 00:51:28
【问题描述】:
我有一些 CSS 在悬停时,CSS 过渡效果会移动一个 div。
问题是,正如您在示例中看到的那样,translate 转换具有可怕的副作用,即使 div 中的图像向下/向右移动 1px(并且可能会稍微调整大小?)所以它显得格格不入,失焦...
故障似乎在应用悬停效果的整个过程中都存在,并且从反复试验的过程中,我可以肯定地说,似乎只在平移转换移动 div 时发生(也应用了框阴影和不透明度,但使删除后的错误没有区别)。
这个问题似乎只在页面有滚动条时发生。因此,只有一个 div 实例的示例很好,但是一旦添加了更多相同的 div,页面因此需要滚动条,问题再次出现......
【问题讨论】:
-
我在 OSX 上使用 Chrome 27,这很好。我相信当内容被放入图层时,它会在动画期间变成位图,并且在旧版本/旧显卡上这看起来不太好。尝试更新版本,看看是否已修复。
-
在 Chrome 25 OS X 上一切正常。顺便说一句:我建议使用与 300KB 图像不同的背景渐变纹理方法!
-
感谢@Paolo - 背景图片仅用于演示,不是实际网站上使用的图片!
-
当动画由 GPU 处理时出现问题,看起来位图四舍五入有点偏离。在 Canary 中复现,但如果你关闭 GPU 加速,它就可以正常工作
-
你可以每帧都试试这个解决方案...stackoverflow.com/a/42256897/1834212
标签: css image hover positioning translate-animation