Media Queries: device-pixel-ratio

语法:

device-pixel-ratio<number>

接受min/max前缀:是

取值:

<number>
用以定义设备屏幕的像素密度。不允许负值

说明:

定义设备屏幕的像素密度(即屏幕质量)。
  • 本特性为非标准特性,与resolution特性能力相同,用来定义设备屏幕的质量。
  • 需要注意的是,本特性接受的值是 <number>,不需要单位(但相当于使用了隐式的 dppx 单位);而resolution接受的值是 <resolution>,单位可以是 dpi, dpcmdppx

    下述两种定义效果等同:

    @media (-webkit-max-device-pixel-ratio: 1.49) { … } @media (max-resolution: 1.49dppx) { … }
  • 本特性接受minmax前缀,因此可以派生出min-device-pixel-ratiomax-device-pixel-ratio两个媒体特性。

    简单列举几个应用示例:

    @media screen and (-webkit-device-pixel-ratio){ … } @import url(example.css) screen and (-webkit-min-device-pixel-ratio: 2); <link media="screen and (-webkit-min-device-pixel-ratio: 2)" rel="stylesheet" href="example.css" />

兼容性:

  • 浅绿 = 支持
  • 红色 = 不支持
  • 粉色 = 部分支持
Values IE Firefox Chrome Safari Opera iOS Safari Android Browser Android Chrome
Basic Support 8.0 40.0+#1 40.0+-webkit-#2 8.0-11.1-webkit-#3 40.0+-webkit-#2 8.0-11.3-webkit-#3 4.4+-webkit-#2 28.0-webkit-#3
9.0+#1 29.0+-webkit-#2
  1. 不支持非标准的min/max-device-pixel-ratio媒体查询特性,推荐使用标准特性min/max-resolution替代。
  2. 同时支持标准的min/max-resolution媒体查询特性,推荐直接使用标准特性。
  3. 不支持标准的min/max-resolution媒体查询特性。

示例:

看完两件小事

如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:

  1. 关注我们的 GitHub 博客,让我们成为长期关系
  2. 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
  3. 关注公众号:画漫画的程序员,每天早上8点30分准时推送:前端前沿资讯、大厂面试题、程序员轶事、职场感悟等,一起进步!

JS中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。欢迎热爱技术的你一起加入交流与学习,JS中文网的使命是帮助开发者用代码改变世界