如何在 Firefox 中禁用对 webp 图像的支持?

如何在 Firefox 中禁用对 webp 图像的支持?

由于 Firefox 本身支持 .webp 图像,因此在提供此选项的网站上,它们将显示为 webp 图像。我们如何才能全局强制 Firefox 始终回退到 jpg 或 png 图像?

我知道 .webp 图像支持是一种改进,但就我而言,我需要使用从 Firefox 拖放到 Windows 资源管理器从网站导出大量图片。由于 Windows 本身不支持 webp 图像,所以这毫无用处……我想获得标准图像。

备注:在 Firefox v70 之前,可以强制调整 about:config: "image.http.accept" = "image/webp,*/*"> 更改为"*/*" 但此调整不再起作用。

答案1

"image.http.accept" = "image/webp,*/*"> 更改为"*/*"

这一变化仍然会让服务器选择最佳格式,包括您不喜欢的格式和浏览器甚至不支持的格式。

相反,你最好针对自己的使用情况设置特定的偏好,包括品质价值观

品质价值观, 或者q 值q 因子,用于以逗号分隔的列表形式描述值的优先级顺序。这是某些 HTTP 标头和 HTML 中允许使用的特殊语法。值的重要性通过后缀标记,';q='后跟介于0和之间的值1,最多三位小数,最高值表示最高优先级。如果不存在,则默认值为1

因此,类似于:

  • image/png,image/*;q=0.8,*/*;q=0.5(哪个一直使用到 Firefox 46
  • 或者更具体地说,WebP 的质量值较低:image/webp;0.1,image/png;q=0.9,image/jpeg;q=0.8,image/*;q=0.7,*/*;q=0.6

(我还没有测试过。也许服务器仅在浏览器明确允许的情况下才使用 WebP。)

答案2

我创建了一个如下所示的测试用例 HTML:

<!doctype html>
<html>
<picture>
  <source srcset="pic.webp" type="image/webp">
  <source srcset="pic.jpg" type="image/jpeg"> 
  <img src="pic.jpg" type="image/jpeg"> 
</picture>
</html>

通过这个测试,我能够测试 Firefox 何时返回 JPG 图像以及何时返回 WEBP 图像。

  • 图片.http.accept = */*
    这还不够——显示的图像是.webp变体。事实上,此设置没有任何效果。

  • image.webp.enabled = false
    此设置使 Firefox 显示.jpg。这本身就足够了。

注意:测试使用 Firefox v70 完成。我认为设置image.webp.enabled是一种临时解决方法,问题image.http.accept是一个错误。

我建议向 Firefox 开发人员报告该错误,并且我确信/希望该错误将在未来的版本中得到修复。

相关内容