听天猫工程师讲面向高清的前端开发

简介: 今天下午杭州GDG举办了谷歌 Women Techmakers活动,不少杭州的程序媛前来参加,论技术、聊艺术、谈人生。其中天猫前端工程师@Doris_fhy分享了《跨终端页面展现 高清化的解决方案》(YouTube),非常精彩。这里是一篇听讲笔记,和大家共享一下。

今天下午杭州GDG举办了谷歌 Women Techmakers活动,不少杭州的程序媛前来参加,论技术、聊艺术、谈人生。其中天猫前端工程师@Doris_fhy分享了《跨终端页面展现 高清化的解决方案》(YouTube),非常精彩。这里是一篇听讲笔记,和大家共享一下。

image.png


为何要面向高清?

据Doris_fhy介绍,天猫移动端访问中,有八成以上的用户使用高清屏。PC端虽然目前只有1%不到用户使用高清屏,然而高清屏是未来的趋势。


如何面向高清?

图标字体

纯色图标可以使用图标字体。

无论屏幕是视网膜、高清屏、普通屏,图标字体的效果都一样细腻平滑。一套字体可以通吃所有设备。

阿里开发的矢量图标库提供了大量精美的矢量图标,值得各位前端开发者一看。

对于中文图标,可以将字体的编码设定到对应的中文,例如“天猫”图标就编码为“天猫”,这样图标没有加载的时候可以显示相应的汉字。


SVG

图表可以使用SVG。

SVG是矢量图形格式,缩放时质量不会有损失。缺点是制作起来成本较高。


高清图片

一些色彩比较复杂的图片,例如天猫的商品图片,不适合用SVG来做。只能为不同设备准备不同尺寸的图片。

使用CSS媒体查询( CSS media queries ),根据不同设备加载不同品质的图片:

@mediaonly screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2){

        /* 2倍分辨率 执行样式*/

}

<img>标签加载的图片则用JavaScript替换,使用 window.devicePixelRatio 来判断是否为高清设备。

当然也可以在CDN层面解决。同一张图片,根据设备的不同,加载不同的版本。


加载速度

使用高清图片,可能会影响到加载速度。特别是对于图片很多的页面(比如商品图片众多的天猫首页)。因此,是否加载高清图片,除了判断是否为高清设备以外,还要考虑网速。

判断网速大致可以通过以下途径:

  • 根据ip来源判断是3G还是WiFi
  • 根据NetworkInformation.connection判断
  • 如果是移动app中访问的话,可以调用平台相应的API来获取网络类型
相关文章
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
快来零门槛、即刻拥有 DeepSeek-R1 满血版
随着人工智能技术的发展,DeepSeek作为一款新兴推理模型,凭借强大的技术实力和广泛的应用场景崭露头角。本文基于阿里云提供的零门槛解决方案,评测DeepSeek的部署与使用。该方案支持多模态任务,涵盖文本生成、代码补全等,融合NLP、IR和ML技术,提供快速实现AI应用的便利。用户无需编码,最快5分钟、最低0元即可部署DeepSeek模型。阿里云还提供100万免费Token,适合预算有限的个人或小型团队试用。通过Chatbox客户端配置API,用户可轻松体验智能交互功能,如数学提问和代码书写等。
46073 7
|
人工智能 知识图谱
成熟的AI要学会自己搞研究!MIT推出科研特工
MIT推出科研特工SciAgents,结合生成式AI、本体表示和多代理建模,实现科学发现的自动化。通过大规模知识图谱和多代理系统,SciAgents能探索新领域、识别复杂模式,加速新材料发现,展现跨学科创新潜力。
227 12
|
自然语言处理 监控 测试技术
1688代采集运系统搭建:实现采购订单处理自动化
1688代采集运系统为海外买家及跨境电商提供一站式服务, 包括商品采集、订单管理、国内集货与国际运输。系统简化采购流程, 提高效率, 并支持多平台与多语言。通过API接口实时获取商品信息, 自动处理订单与物流, 支持多种支付方式, 便于全球用户使用。系统搭建需注册认证并接入API, 进行测试优化。此系统助力国货全球化。
|
11月前
|
自然语言处理 搜索推荐 数据挖掘
销售易、八百客、用友CRM:行业应用与选型建议
在数字化转型浪潮中,CRM系统成为企业提升销售效率、优化客户体验和增强竞争力的关键工具。本文深度剖析了销售易CRM、八百客CRM和用友CRM,从产品功能和优势特色两方面进行总结。销售易CRM适合大型企业和跨国公司,提供全面的客户管理、销售自动化、营销自动化等功能;八百客CRM以其易用性和移动办公特性,适合中小企业;用友CRM则以综合管理和定制化解决方案见长,适合需要一体化管理的中大型企业。企业应根据自身需求选择最适合的CRM系统,助力数字化转型。
|
C语言
C语言模块化程序设计探讨
C语言模块化程序设计探讨
363 0
|
XML Java Maven
Maven 生成可运行的jar的多种方式
Maven 生成可运行的jar的多种方式
580 0
Maven 生成可运行的jar的多种方式
|
XML Java Android开发
Android Studio App开发之网络通信中使用POST方式调用HTTP接口实现应用更新功能(附源码 超详细必看)
Android Studio App开发之网络通信中使用POST方式调用HTTP接口实现应用更新功能(附源码 超详细必看)
795 0
|
算法 NoSQL Java
实战-全局唯一邀请码功能实现
实战-全局唯一邀请码功能实现
1931 0
|
API UED
短链接生成、短网址生成、缩短链接、将长链接缩短
短链接生成、短网址生成、用于将长网址、长链接缩短,把冗长的URL地址缩短成短链接、短网址,支持各大平台分享,把短信内容中的链接缩短为短链接,缩短短信文案长度,节省短信发送费用。
4087 1
|
消息中间件 缓存 搜索推荐
互联网后端技术栈一览,写得太好了。。(1)
互联网后端技术栈一览,写得太好了。。(1)
2290 0
互联网后端技术栈一览,写得太好了。。(1)