【问题标题】:web page image is showing black on mobile browser网页图像在移动浏览器上显示为黑色
【发布时间】:2020-03-08 21:54:43
【问题描述】:

我有网页(php 页面),它在我的桌面、ipad(9.7 英寸或更大)中的任何浏览器上都能很好地显示图像,但在 iphone、android 手机和 ipad mini 中从未显示。移动浏览器只显示黑色图像。

  1. 我想知道图片太大 (jpg),但相同的 jpg 文件在桌面浏览器中显示良好,但在移动浏览器中显示为黑色。
  2. 我研究谷歌。有人说这张图片可能使用 CMYK 格式。我怎么知道这张图片是 CMYK 格式?这是问题吗?

有人知道如何解决这个问题吗?

给你一张图片样本

链接:http://www.cbeiji.com/upload1812/20200308120858161866827.jpg

html:

<img alt="" src="http://www.cbeiji.com/upload1812/20200308120858161866827.jpg">

桌面浏览器显示良好。

移动浏览器不显示。它是一个黑色矩形。

【问题讨论】:

    标签: html image mobile


    【解决方案1】:

    这不是 JPEG,而是 PNG。

    现在,浏览器并不真正知道或关心文件名是什么,但您的服务器正在使用 .jpg 扩展名来确定要发回的 Content-Type 标头。您的服务器正在发送:

    Content-Type: image/jpeg
    

    显然,由于它不是 JPEG,因此某些客户会遇到此问题。对于那些正在工作的......浏览器对你很好。

    顺便说一句,您可以使用众多在线元数据查看器之一自行验证这些内容。例如:https://exifmeta.com/

    【讨论】:

    • 感谢布拉德的回答!我刚回来看评论。所以你的意思是jpg实际上是一个png文件?您知道如何使用 php 更正扩展名吗?这只是一个示例图像。如果我不想在多张图片的情况下右键将其更改为png,我们如何使用php识别类型然后将其更改为实际的图像类型?
    • @huichen 关于这个话题有很多 Stack Overflow 的回答。 stackoverflow.com/a/28077738/362536stackoverflow.com/a/1141249/362536
    【解决方案2】:
    1. 使用图像编辑器并将文件另存为常规 jpg(或只需右键单击另存为)
    2. 确保没有添加透明度

    先用一张图片检查一下,看看是否有帮助。

    【讨论】:

    • 感谢 omadawn 的回答!我刚回来看评论。我怎么知道图像是否添加了透明度?对于一堆图像,我们如何将它们更改为正确类型的图像,例如 .jpg 的 100 张图像,如何一次更改它们或使用编程语言?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-10
    • 1970-01-01
    • 1970-01-01
    • 2021-06-12
    相关资源
    最近更新 更多