写点什么

Web 响应图像综述

  • 2013-08-22
  • 本文字数:943 字

    阅读完需:约 3 分钟

WebKit 每日构建版本现在支持图像元素的 W3C srcset 属性规范,允许开发人员为拥有高分辨率显示器的用户指定更高质量的图像,而又不妨碍没有高分辨率显示器的用户。它还为尚不支持该特性的浏览器提供了一个很好的后备方案:

复制代码
<img alt="My reakfast"
src="breakfast.jpeg"
srcset="breakfast-HD.jpeg 2x, breakfast-phone.jpeg 100w, breakfast<br></br>-phone-HD.jpeg 100w 2x">

WebKit 支持 CSS 函数 -webkit-image-set 已经有段时间了,它与 srcset 属性非常相似,可以为包含图像的 CSS 属性提供一个候选图像的 URL 列表,每个 URL 的后面都有一个修饰符,如“2x”。这样,浏览器可以为用户设备选择最好的图像:

复制代码
body {
background: -webkit-image-set( url('path/to/image') 1x, url<br></br>('path/to/high-res-image') 2x );
}

WebKit 采取这一行动的时候,社区和浏览器实现者还在争论“什么是 Web 响应图像的最佳选择”。响应图像社区组织(RICG)将在数周后齐聚巴黎,讨论响应图像的前进方向。在召集会议时,RICG 的 Yoav Weiss 概括了响应图像未来的潜在解决方案和当前开发人员的实践

过去的几年里,在 Web 开发人员的极大关注下,各团体的成员都致力于寻找一种方法为 Web 带来响应图像。虽然现在有三种待讨论的方案(srcset[1]、[2] 和 client-hints[3]),但是由于无法预知浏览器实现的必然趋势,所以我们宁愿让市场来决定哪一种解决方案能最有效地满足应用场景。

与此同时,Web 开发人员不得不自定义 polyfill, 这经常会阻止浏览器加载图像资源,直到 DOM 加载完成(至少是部分加载完成),并且页面上的 JavaScript 已经运行。这直接阻碍了浏览器工程师多年来一直从事的性能工作,包括优化资源加载和根据优先级尽快取得线上请求。上述情况使开发人员陷入了两难境地,“我们是延迟图像加载呢,还是下载不必要的图像数据而导致整个加载时间延长进而夸大了用户账单呢?”

为应对 Web 响应图像的挑战,当前流行的解决方案包括:

  • Picturefill :一个 polyfill,模拟已拟定的元素
  • HiSRC :一个 jQuery 插件,在页面加载的时候,根据设备支持情况,选择下载(或不下载)高分辨率的版本
  • “自适应图像( Adaptive Images )”:一个服务器端解决方案,用于提供正确的图像分辨率 / 尺寸

查看英文原文: Round-up on Responsive Images for the Web

2013-08-22 00:071880
用户头像

发布了 256 篇内容, 共 100.1 次阅读, 收获喜欢 12 次。

关注

评论

发布
暂无评论
发现更多内容

使用Docker构建集成Supervisor的自定义镜像

代码忍者

Milvus 2.5:全文检索上线,标量过滤提速,易用性再突破!

Zilliz

全文检索 Milvus 新版本发布 标量过滤

Dolphinscheduler DAG核心源码剖析

白鲸开源

GitHub 大数据 开源 Apache DolphinScheduler 调度器

手把手教你华为鸿蒙开发之第五节

The Wang

haromny

超详细HarmonyOS开发教程之开发环境搭建指南

The Wang

HarmonyOS NEXT

中小企业如何选择适合自己的MES系统

万界星空科技

数字化转型 生产管理系统 mes 万界星空科技 中小型制造业

KubeBlocks v0.9.2发布啦!支持容器镜像滚动更新、MySQL支持Jemalloc...快来升级体验更多新功能!

小猿姐

MySQL 数据库 redis 云计算 Kubernetes Serverless

面对不同大小的需求,如何评估研发团队各角色的效能水平?

思码逸研发效能

DevOps 研发效能 研发团队 效能管理

Milvus×OPPO:如何构建更懂你的大模型助手

Zilliz

Embedding OPPO 向量检索 Milvus

通义灵码“打工”1年记:写了10亿行代码,服务上万家企业

阿里巴巴云原生

阿里云 云原生

连锁茶叶商店ERP系统(源码+文档+部署+讲解)

深圳亥时科技

测试开发工程师如何打造高效的质量体系

测吧(北京)科技有限公司

测试

手把手教你华为鸿蒙开发之第四节

The Wang

HarmonyOS NEXT

如何让硬装设计项目高效推进?从混乱到有序的秘诀

axe

项目管理工具 降本增效 装修项目管理 硬装设计

能源投资工程VS智能驾驶,DolphinScheduler如何当好传统行业与前沿科技的桥梁?

白鲸开源

开源 Apache DolphinScheduler 技术活动 干货分享

手把手教你华为鸿蒙开发之第九节

The Wang

HarmonyOS NEXT

【金猿人物展】白鲸开源CEO郭炜:未来数据领域的PK是大模型Transformer vs 大数据Transform

白鲸开源

大数据 数据处理 大模型 Apache SeaTunnel

AI在手机里结出了果

脑极体

AI

手把手教你华为鸿蒙开发之第三节

The Wang

HarmonyOS NEXT

DevEco Studio:状态管理与事件处理

The Wang

harmoyos

ChatGPT插件的开发流程

北京木奇移动技术有限公司

AI智能体 chatGPT插件开发 软件外包公司

通义灵码“打工”1年记:写了10亿行代码,服务上万家企业

阿里云云效

阿里云 云原生

和网易伏羲共探 100 个值得深入学习的技术创新案例|TOP100Summit

网易伏羲

人工智能 演讲 网易伏羲

Spring高手之路26——全方位掌握事务监听器

砖业洋__

spring 事务

向量检索服务关联角色

DashVector

人工智能 数据库 向量检索 大模型

DevEco Studio 实战第一节:字符串拼接与组件构建

The Wang

HarmonyOS NEXT

Web响应图像综述_JavaScript_Dio Synodinos_InfoQ精选文章