我想知道您的手机/网络浏览器是否正在渲染不透明度为 0 的图像。 我有一个应用程序可以快速创建大量图像并且 当我使用过渡并将我的不透明度设置为 0.5 时,它会滞后,而当我使用不透明度 0 时,它不会滞后。 所以我假设不透明度为 0 的图像根本没有被渲染。
javascript代码:
function transitionImage(trans, x, y) { //trans is an image
image.style.transition = "transform 1000ms ease-in, opacity 500ms ease-in 500ms";
image.style.transform="translate("+x+"px, "+y+"px)";
image.style.opacity="0"; //or 0.5
}
我是否需要在过渡后删除不透明度为 0 的图像,还是没有必要?
最佳答案
更新
参见 Callback when CSS3 transition finishes完整答案
现代网络浏览器使用 GPU 来呈现部分网页,尤其是带有动画的网页。我认为您的理论是正确的,因为当不透明度设置为 0 时,您的 GPU 将不会渲染任何内容。
我认为更好的方法是在属性未显示时设置 display:none;
而不是 opacity:0
。
关于css - 是否渲染不透明度为 0 的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49733894/