webp 格式图片显示异常分析及解决方案

 更新时间:2023年04月20日 16:32:19   作者:我爱语文  
WebP,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。提供了有损压缩与无损压缩(可逆压缩)的图片文件格式,能节省大量的服务器带宽资源和数据空间,这篇文章主要介绍了webp 格式图片显示异常分析及解决方案,需要的朋友可以参考下

webp 格式的图片显示异常

webp介绍

WebP,谷歌(google)开发的一种旨在加快图片加载速度的图片格式。提供了有损压缩与无损压缩(可逆压缩)的图片文件格式,能节省大量的服务器带宽资源和数据空间。

webp转换

  • 右键点击图片,点击【在新标签页中打开图片】。
  • 若是看到地址栏的后缀是webp,把webp改为jpg/png,回车。然后再点击图片,选择【另存为】,图片存储为jpg/png。
  • 若看到地址栏的后缀不是webp,点击图片,选择【另存为】,图片存储为wenp格式的。然后再次打开存在本地webp格式图片,看到地址栏的后缀是webp,按照步骤二继续操作。

在这里插入图片描述

踩坑:直接修改图片的后缀名不可取,没有改变原图片的属性,其实还是webp的格式。也可以通过转换工具或者命令行进行转换。

webp兼容性

目前网页浏览器当中,Google ChromeOpera原生支持静态与动态的WebP格式。Firefox浏览器亦在65.0版本支持WebP图像。
苹果在macOS Sierra及iOS 10的早期beta版本中加入了WebP支持。而在2016年9月7日发布的iOS 10 和 macOS Sierra GM种子版本中却移除了WebP的支持。

总结,webp 在 ios5/6 的 chrome、safari 浏览器不支持,在 Android 常用的浏览器都支持。

兼容解决方案

前端js的方案还未实践,想实践的可参考原文[3]。
简单方案,把webp格式转为png,在项目中使用,保正图片在各设备正常显示。

参考原文链接:

[1] https://developers.google.com/speed/webp
[2] https://zh.wikipedia.org/wiki/WebP
[3] https://segmentfault.com/a/1190000004948757 

附录:解决 .webp 格式图片在 ios 设备上无法正常显示的问题

解决.webp 格式图片在 ios 设备上无法正常显示的问题

使用字符串的 replace() 方法,将 webp 的后缀名替换为 jpg 的后缀名

// 定义请求商品详情数据的方法
async getGoodsDetail(goods_id) {
  const { data: res } = await uni.$http.get('/api/public/v1/goods/detail', { goods_id })
  if (res.meta.status !== 200) return uni.$showMsg()

  // 使用字符串的 replace() 方法,将 webp 的后缀名替换为 jpg 的后缀名
  res.message.goods_introduce = res.message.goods_introduce.replace(/<img /g, '<img style="display:block;" ').replace(/webp/g, 'jpg')
  this.goods_info = res.message
}

到此这篇关于webp 格式的图片显示异常的文章就介绍到这了,更多相关webp 格式图片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Postman配置多环境请求地址的实现

    Postman配置多环境请求地址的实现

    本文主要介绍了Postman配置多环境请求地址的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Win10环境下 编译 和 运行 x264的详细过程

    Win10环境下 编译 和 运行 x264的详细过程

    这篇文章主要介绍了Win10环境下编译和运行x264的详细过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10
  • 详解HTTP协议(很经典)

    详解HTTP协议(很经典)

    HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。本文给介绍http 协议非常经典,需要的朋友参考下吧
    2017-09-09
  • 基于prompt tuning v2训练好一个垂直领域的chatglm-6b

    基于prompt tuning v2训练好一个垂直领域的chatglm-6b

    这篇文章主要为大家介绍了基于prompt tuning v2训练好一个垂直领域的chatglm-6b的过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • VSCode如何巧用正则表达式快速处理字符段

    VSCode如何巧用正则表达式快速处理字符段

    正则真的好用,平时工作用正则最多的地方就是在编辑器里做查找替换,下面这篇文章主要给大家介绍了关于VSCode如何巧用正则表达式快速处理字符段的相关资料,需要的朋友可以参考下
    2022-11-11
  • Windows 版本Git命令行的使用详解

    Windows 版本Git命令行的使用详解

    这篇文章主要介绍了Windows 版本Git命令行的使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • flash 挡住层的解决方法

    flash 挡住层的解决方法

    使用层制作的下拉菜单下正好有FLASH动画,菜单被动画遮挡.
    2009-08-08
  • 三大UML建模工具Visio、Rational Rose、PowerDesign的区别比较

    三大UML建模工具Visio、Rational Rose、PowerDesign的区别比较

    UML建模工具相信大家有所了解,那么你对UML建模工具Visio 、Rational Rose、PowerDesign之间的区别和联系是否了解,这里就像大家简单介绍一下
    2013-02-02
  • 文本文件编码方式区别

    文本文件编码方式区别

    当一个软件打开一个文本时,它要做的第一件事是决定这个文本究竟是使用哪种字符集的哪种编码保存的。
    2008-09-09
  • Git基础学习之文件删除操作命令详解

    Git基础学习之文件删除操作命令详解

    这篇文章主要为大家详细介绍了Git基础学习中的文件删除操作命令,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以了解一下
    2022-10-10

最新评论