最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

CSS>高清缩放原理分析_html/css_WEB-ITnose

来源:动视网 责编:小采 时间:2020-11-27 16:38:49
文档

CSS>高清缩放原理分析_html/css_WEB-ITnose

CSS>高清缩放原理分析_html/css_WEB-ITnose:最近在研究 Retina 屏的适配问题,在具体方案讨论之前,陆续做了一些理解笔记,现归纳如下。具体方案的讨论将另作文章。 中的 viewport是布局视口 initial-scale等的缩放是基于理想视口的 理想视口由设备各自提供,理想视口的宽度也是设备的独立像
推荐度:
导读CSS>高清缩放原理分析_html/css_WEB-ITnose:最近在研究 Retina 屏的适配问题,在具体方案讨论之前,陆续做了一些理解笔记,现归纳如下。具体方案的讨论将另作文章。 中的 viewport是布局视口 initial-scale等的缩放是基于理想视口的 理想视口由设备各自提供,理想视口的宽度也是设备的独立像


最近在研究 Retina 屏的适配问题,在具体方案讨论之前,陆续做了一些理解笔记,现归纳如下。具体方案的讨论将另作文章。

  1. 中的 viewport是布局视口

  2. initial-scale等的缩放是基于理想视口的

  3. 理想视口由设备各自提供,理想视口的宽度也是设备的独立像素

  4. 所谓“独立”是说这个设备独立像素和像素密度无关

  5. Retina屏增加了设备像素(物理像素),所以物理像素是有密度变化的

  6. dpr = 物理像素/设备独立像素 = 设备像素个数/设备理想视口宽度

  7. dpr 在 JavaScript 中可以通过 window.devicePixelRatio获取,在 CSS Media Query 中的名称是 device-pixel-ratio

  8. CSS像素和物理像素有区别,当1个CSS像素跨越更多物理像素时,就模糊了,反之则清晰,CSS像素被用在布局视口上

  9. 缩放可以调整CSS像素和物理像素之间的比例关系。高清屏的缩放方案就是:如将布局视口扩大为理想视口的2倍,即理想视口缩放比例为1/2,那么CSS像素将比以前跨越更少的物理像素,从而保证清晰度

  10. 布局视口/理想视口 = CSS像素/设备独立像素 = 1/缩放比例

  11. 物理像素/设备独立像素 = dpr

  12. 页面清晰要求 —— CSS像素/物理像素 = 1

  13. 故 —— 缩放比例 = 1/dpr

从以下的关系比中来认知:

  1. 布局视口(CSS像素) : 设备独立像素(理想视口) : 物理像素

  2. 设备独立像素可以被看做一个中间件:

  3. 当 dpr=1 时,设 initial-scale=1.0,布局视口等于设备独立像素,设备独立像素等于物理像素,故布局视口等于物理像素,1CSS像素跨1物理像素

  4. 当 dpr=2 时,设 initial-scale=1.0,布局视口等于设备独立像素,设备独立像素是物理像素的一半,故布局视口是物理像素的一半,1CSS像素跨4物理像素

  5. 当 dpr=2 时,设 initial-scale=0.5,布局视口是设备独立像素的两倍,设备独立像素是物理像素的一半,故布局视口等于设备像素,1CSS像素跨1物理像素

  6. 再来研究高清屏,以下均设:设备独立像素是 375px,dpr=2,物理像素则是 750px,元素DIV div{width: 375px}:

  7. initial-scale=1.0 时,1CSS像素跨越4物理像素,故 DIV 是满屏的

  8. initial-scale=0.5 时,1CSS像素跨越1物理像素,故 DIV 只占屏幕的一半,要想同样保持全屏,就需要把 DIV 改为 div{width: 750px}

  9. 所以,对于图来说,第一种情况下普通图片就会拉伸,从而模糊;第二种情况,就是使用高清图

  10. 为不同屏幕的元素设置不同的像素单位过于麻烦,开发者就需要考虑是否有跨屏幕的尺寸单位解决方案

  11. rem:当普通屏时,设 :root{font-size: 10px},则 37.5rem 是 375px;高清屏时,设 :root{font-size: 20px},则 37.5rem 是 750px,因此,我们在 DIV 元素上只需要设置一个 37.5rem,在不同屏幕下更改根元素的字体大小,就可以兼容所有屏幕了

  12. vw 和 wh:相对于布局视口大小计算尺寸,普通屏布局视口是 375px,高清屏是 750px,无论怎么变,vw/vh 单位的最后结果都会相应变化

文档

CSS>高清缩放原理分析_html/css_WEB-ITnose

CSS>高清缩放原理分析_html/css_WEB-ITnose:最近在研究 Retina 屏的适配问题,在具体方案讨论之前,陆续做了一些理解笔记,现归纳如下。具体方案的讨论将另作文章。 中的 viewport是布局视口 initial-scale等的缩放是基于理想视口的 理想视口由设备各自提供,理想视口的宽度也是设备的独立像
推荐度:
标签: 原理 缩小 缩放
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top