50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

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:071827
用户头像

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

关注

评论

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

Go学习之路-1.认识GO语言

子不语Any

Go 后端 10月月更

OpenHarmony如何控制屏幕亮度

坚果

OpenHarmony 10月月更

今日国庆,祝福祖国!【文末超级福利】

图灵教育

读书 国庆节

用任意类型编写代码——一文带你了解泛型编程

宇宙之一粟

Java 泛型编程 10月月更

Spring Boot 集成 Redis 配置 MyBatis 二级缓存

微枫Micromaple

redis 缓存 mybatis springboot 10月月更

体验 Orbeon form PE 版本提供的 JavaScript Embedding API

汪子熙

Java SAP commerce 10月月更 oberon

简述构建微服务架构的四大挑战

穿过生命散发芬芳

微服务 10月月更

大数据ELK(十):使用VSCode操作猎聘网职位搜索案例

Lansonli

ELK 10月月更

《零代码教练指南》正式发布

明道云

Python应用之计算三角形面积

芯动大师

10月月更 Python代码 计算三角形面积

跟随一组图片,了解Go Channel的底层实现

董哥的黑板报

Go 后端 服务端 操作系统 runtime

[架构实战] 学习笔记二

爱学习的麦子

架构师的十八般武艺:线上运维

agnostic

运维

2022-10-01:给定一个字符串 s,计算 s 的 不同非空子序列 的个数 因为结果可能很大,所以返回答案需要对 10^9 + 7 取余 。 字符串的 子序列 是经由原字符串删除一些(也可能不删除

福大大架构师每日一题

算法 rust 福大大

数组操作の旋转二维数组

掘金安东尼

算法 10月月更

16个分论坛出品标准大揭秘,期待你的申请!

开源社

从特斯拉人形机器人亮相看AI人工智能模型落地面临的两个难题

felix

落地 机器人 AI人工智能

mysql中的事务隔离级别序列化如何实现

知识浅谈

MySQL 隔离级别 10月月更

Qt解压带有密码的加密文件

中国好公民st

c++ Qt Company 10月月更

一起玩OptaPlanner-Study,玩转第一个程序

积木编程

开发者有话说|程序猿工作多年之后的感悟

慕枫技术笔记

个人成长

微服务稳定性保障

穿过生命散发芬芳

微服务 10月月更

今日国庆,祝福祖国!【文末超级福利】

图灵社区

读书 国庆节

存储优化--分区与冷热分离

喵叔

10月月更

【LeetCode】重新格式化电话号码Java题解

Albert

LeetCode 10月月更

【一Go到底】第一天---初识Goooooooooooooooooooooooo

指剑

Go go并发 10月月更

【从0到1学算法】1. 如何获取题中关键信息

Geek_65222d

10月月更

MyBatis学习笔记之JDBC

薛定谔的猫

mybatis JDBC 10月月更

面试官:高并发场景下,你们是怎么保证数据的一致性的?

一灯架构

Java MySQL 10月月更

ESP32-C3 学习测试 蓝牙 篇(四、GATT Server 示例解析)

矜辰所致

蓝牙 ESP32-C3 10月月更 GATT

COSCon'22主论坛来袭 开源站在十字路口

开源社

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