如何修复Android浏览器(移动网站)上的PNG图像条带



对于一个移动网站项目,我遇到了一个问题(仅在android浏览器上),透明度的渐变(平滑的外部辉光)看起来不干净。相反,你可以看到它周围清晰的边缘。奇怪的是,只要我滚动页面,它似乎就会消失。

https://i.stack.imgur.com/qGmXj.png

该问题不会出现在任何桌面浏览器或iOS设备上。

谢谢你的帮助!

  • 更新:
    我发现,这个问题被称为PNG Banding,只发生在16位显示器上的PNG-24(24位)上。由于质量损失,我无法使用8位图像(它会渲染得很好),我仍然没有找到解决问题的方法

我也没有找到这个问题的解决方案。

在我的例子中,我有一个从白色到透明渐变的PNG,我会将其覆盖在具有纯色背景的元素上,使它们在顶部"闪闪发光"。无论我尝试了什么,安卓浏览器上总是会有条带(其他浏览器根本没有)。

在我尝试PNG渐变之前,我曾尝试过使用CSS3,但也遇到了同样的问题。

最后,我被迫创建不透明的PNG,其中白色到透明的渐变层与颜色层合并。这意味着我必须用Photoshop对每个可能的闪光/阴影进行"硬编码",不管它是什么颜色。不是最好的解决方案,但它在Android浏览器上显示良好,没有任何条纹,我需要做一些的事情,所以是的。:|

在photoshop中,保存为Web。选择PNG-8位。抖动选项:选择模式或噪音。这将平滑渐变条带。

最新更新