css - Css --webkit-image-set() 语法不适用于 Chrome
问题描述
我想在我的网站上使用.avif
和.webp
图像,记住我需要为不受支持的浏览器提供后备。文档https://developer.mozilla.org/en-US/docs/Web/CSS/image/image-set()#using_image-set_to_provide_alternative_formats建议-webkit-image-set
应该有所帮助:
background-image: url("/public/header-fallback.jpg");
background-image: -webkit-image-set(url('/public/header.avif') type('image/avif'), url('/public/header.webp') type('image/webp'), url('/public/header.jpg') type('image/jpeg'));
这适用于Firefox(跳过avif并使用webp)但Chrome给了我Invalid property value
(忽略整个样式并使用'header-fallback.jpg')。为什么?
解决方案
似乎 chrome 不完全支持 image-set
我们的实现不符合规范,因为图像只接受 URL 值,并且只接受以“x”为单位的分辨率。
要使其与 chrome 一起使用,请尝试删除类型并添加 1x
url('https://url.avif') 1x
推荐阅读
- powerbi - IF() 使用忽略过滤器的变量进行测量
- laravel - 数组到带有箭头的集合访问?
- java - Osm:Relation to GeoJson的逻辑和代码示例
- angular - Angular 7 - 使用 ng-content 投影对表 trs 进行排序
- javascript - 通过电报机器人上传和发送字符串作为文件
- python - 是否可以在 MacOS 上使用 pyexiv2 和 python3
- wpf - 如果 3 个选项卡中的三个文本框之一具有内容,则启用按钮
- loops - 导入 Ansible 角色时,有没有办法循环两个变量?
- android - 当按钮位于另一个片段内时,从主活动调用按钮单击事件
- sql - 我需要从同一个表中提取重复信息,但它不是相同的行中的全部信息