设计师提供的2倍图有啥用?(移动端适配基础知识)

物理像素&物理像素比

物理像素点指的是屏幕显示的最小颗粒,是物理真实存在的。这是厂商在出厂时就设置好了,比如苹果6\7\8 是 750* 1334

物理像素比就是屏幕的分辨率,分辨率越高,显示越清楚,750* 1334就是横的有750的像素点,竖的有1334的像素点

物理像素就是我们说的分辨率,例如iphone8的物理像素是750

我们开发时候的1px 不是一定等于1个物理像素的

例如在iPhone8里面 1px 开发像素 = 2个物理像素

设计稿通常都是以iphone6/7/8为准,即375(开发尺寸)

PC端 和 早前的手机屏幕 / 普通手机屏幕: 1CSS像素 = 1 物理像素的

Retina(视网膜屏幕)是一种显示技术,可以将把更多的物理像素点压缩至一块屏幕里,从而达到更高的分辨率,并提高屏幕显示的细腻程度。

多倍图

对于一张 50px * 50px 的图片,在手机 Retina 屏中打开,按照刚才的物理像素比会放大倍数,这样会造成图片模糊

在标准的viewport设置中,使用倍图来提高图片质量,解决在高清设备中的模糊问题

通常使用二倍图, 因为iPhone 6\7\8 的影响,但是现在还存在3倍图4倍图的情况,这个看实际开发公司需求

背景图片 注意缩放问题

xml 复制代码
<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> 
<title>Document</title> 
<style> 
/* 我们需要一个50*50像素(css像素)的图片 直接放到我们的iphone8 里面会放大2倍 100* 100 就会模糊 */ 
/* 我们采取的是 放一个 100* 100 图片 然后手动的把这个图片 缩小为 50* 50 (css像素) */ 
/* 我们准备的图片 比我们实际需要的大小 大2倍,这就方式就是 2倍图 */ 
img:nth-child(2) { width: 50px; height: 50px; } 
</style> 
</head> 
<body> 
<!-- 模糊的 --> 
<img src="images/apple50(1).jpg" alt="">
<!-- 我们采取2倍图 -->
<img src="images/apple100.jpg" alt="">
</body> 
</html>

就是原先用50x50放到移动端会放大,变的模糊,但是如果我们采用100100然后压缩成5050,在放到移动端又变成了100*100实际上并没有变化,但是实际没有模糊

背景缩放 background-size

background-size: 背景图片宽度 背景图片高

单位: 长度|百分比|cover|contain;

cover把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。

contain把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域

多倍图切图 cutterma

@3X 3倍图

@2X 2倍图

@1X 1倍图原图

现在要收费了,可以去淘宝上买

相关推荐
夜焱辰8 小时前
浏览器端 Agent 的文件版本管理:不用 Git,基于 OPFS + SQLite 自己造了一个
前端·人工智能
梦想的颜色8 小时前
TypeScript 完全指南(下):从类型体操到生产级配置
前端·javascript·typescript
Hi~晴天大圣9 小时前
npm使用介绍
前端·npm·node.js
888CC++10 小时前
如何在 C 语言中进行程序调试?
前端·javascript·算法
喵个咪10 小时前
基于 Taro 的 Headless CMS 多端前端架构:技术解析与二次开发导引
前端·react.js·taro
狂炫冰美式10 小时前
你还在古法PPT吗,试试HTML呢?免费编辑导出工具给 xdm 放这了
前端·后端·github
万少11 小时前
未来组织的分水岭不是员工数量,而是人才密度
前端·后端·面试
任磊abc11 小时前
nextjs16配置eslint+prettier
前端·eslint·nextjs·prettier
x***r15111 小时前
Another-Redis-Desktop-Manager.1.3.7安装步骤详解(附Redis可视化连接与Key管理教程)
前端·bootstrap·html
Captaincc11 小时前
你真的知道自己把 AI 用在了哪里吗?这是 Vibe Usage 想回答的问题
前端·vibecoding