系统

快速查看你的屏幕分辨率、视口大小与显示器尺寸——全部都可以直接在浏览器里完成。

系统

快速查看你的屏幕分辨率、视口大小与显示器尺寸——全部都可以直接在浏览器里完成。

隐私优先 系统 测试工具 usbRecognized 上的所有工具都在您的浏览器中通过安全的 Web API 运行,无需下载软件、无需安装、不会上传任何数据——您的隐私 100% 受到保护。点击上方任意工具即可开始测试。

该分类中的部分工具现已可用(标有 ✓)。其余工具即将推出——每个“即将推出”页面都包含详细预览,介绍该工具的功能,以及在此期间您可以如何测试硬件。

分辨率、viewport 与设备像素比

日常说法里有三个完全不同的数字都被叫做分辨率,混淆它们是浏览器读数与规格表对不上的最常见原因。屏幕分辨率是指显示器实际能点亮的物理像素数量。viewport 大小是网页真正能用的区域,因为浏览器外框、任务栏和停靠的面板都会占掉一部分空间。设备像素比则表示一个布局像素对应多少个物理像素。

设备像素比是最容易被忽略的一项,却能解释很多看似奇怪的读数。在高密度屏幕上,这个比值可以达到 2 或更高,也就是说,以布局像素计的某个 viewport 宽度,实际覆盖的物理像素是两倍。这就是为什么高密度屏幕的截图实际尺寸总比报告的 viewport 尺寸大上一圈,但这并不是哪里出了问题。

浏览器缩放只改变这个比值,不改变显示器本身。放大页面会让布局像素变大,于是报告的 viewport 宽度就会变小,而物理面板其实纹丝没动。在断定分辨率读数有误之前,先确认缩放已经回到默认值,因为缩放是按网站、按窗口分别记住的。

为什么测得的分辨率和规格表不一样

显示器完全可以跑在低于原生分辨率的状态下,而且这种情况很常见。系统设成缩放模式后,硬件层面依然用原生分辨率驱动面板,但桌面是按更小的逻辑分辨率渲染,再整体放大显示的。浏览器拿到的是桌面给它的数字,也就是缩放后的数值,而不是面板的原生数值。

外接显示器会带来第二个变量。连接线带宽撑不起最高分辨率加目标刷新率的组合时,显示器会悄悄协商出一个更低的组合,整个过程没有任何提示。规格表写的是面板的上限,报告值反映的却是当前这条连接的实际能力,两者单位相同,但根本不是同一个量。

虚拟机和远程会话则干脆换掉了整套显示子系统。远程会话里报告的分辨率描述的是一块虚拟帧缓冲,而不是任何一块真实面板,而且调整窗口大小时它还会跟着变。这属于正常现象,不是故障,也解释了大多数看似不可能的分辨率读数。

用屏幕分辨率排查问题

分辨率在排查时最管用的用法是拿来对比。把报告值和显示设置里的选项对比,就能看出有没有开缩放。把 viewport 和屏幕分辨率对比,就知道浏览器外框吃掉了多少显示面积,而这正是一套布局只在某一台机器上错乱的最常见原因。

做网页开发时,它的实际用途是验证断点。在桌面浏览器里拖窄窗口看到的正常布局,放到真机上可能完全走样,因为拖窗口只改变 viewport,不改变设备像素比,而真正的手机是两者一起变的。只有把比值和 viewport 放在一起看,这个差别才会现形。

做技术支持时,分辨率是最快确认用户到底在用哪台机器的方法之一。笔记本外接显示器的用户,浏览器窗口放在哪块屏上,报告的分辨率就是哪块屏的,直接问他页面上显示的数值,几秒钟就能消除这种含糊。

浏览器检测显示器的能力边界

浏览器读不到显示器的真实物理尺寸。它拿不到对角线英寸数,也拿不到面板型号,因为这些信息存在显示器的 EDID 数据里,而网页够不着。所以任何号称能报出你的显示器具体是几英寸的网站,都是拿分辨率除以一个猜出来的像素密度算出来的,猜错是常事。

浏览器也列不出所有接上的显示器。它只能报告窗口当前所在的那块屏,某些配置下再加上一个合并后的屏幕尺寸,但那些接了却没在用的面板,它一概看不见。所以在多屏机器上测试,得把浏览器窗口逐个拖到每块屏上看,而不能指望一份报告讲清所有屏幕。

色深报的是一个位数,而不是实测的显示能力,而且这个数字反映的是合成管线的状态,不是面板。一块支持更高色深的面板,可能因为线材、系统设置或应用的原因跑在更低的色深上。报告的色深是浏览器手头实际在用的值,有参考价值,但不代表硬件的上限。

系统 FAQ

怎么查我的屏幕分辨率?

直接在浏览器里看,别去显示设置里找,因为浏览器报的是页面实际在用的分辨率。这个数字已经把系统缩放算进去了,最能解释布局和截图为什么是现在这个样子。显示设置面板报的是面板模式,两者本来就可能不一样。

为什么浏览器报的分辨率比显示器标的低?

因为开了系统缩放,或者连接协商出了更低的模式。面板硬件层面可能依然跑在原生分辨率上,但桌面是按更小的逻辑尺寸渲染再放大的。先查缩放设置,再查线材和接口,都没问题再怀疑显示器本身。

屏幕分辨率和 viewport 大小有什么区别?

屏幕分辨率说的是整块显示器,viewport 只是分给网页的那一块。浏览器外框、任务栏和停靠的开发者面板都会压缩 viewport,但屏幕本身没变。所以一个页面在拖窄的窗口里放得下,换到标称分辨率相同的设备上仍可能溢出,原因就在这里。

什么是设备像素比?

一个布局像素对应多少个物理像素。比值是 2,就意味着每个布局像素用 4 个物理像素来画,高密度屏幕通常就是这样。它解释了高密度屏幕的截图为什么比报告的 viewport 大,也解释了图片如果没按更高密度准备,看起来为什么会发虚。

接上外接显示器后分辨率为什么变了?

因为浏览器报的是窗口当前所在的那块屏,窗口在两块屏之间挪动,读数就跟着变。镜像模式会逼两块屏用一个公共模式,通常是取低的那一档,于是高分辨率笔记本一镜像到低分辨率投影仪,看起来就像分辨率丢了。改成扩展而不是镜像就能避开这个问题。

网站能测出我的显示器真实尺寸吗?

不能。对角线尺寸和面板型号放在浏览器不向网页开放的显示标识数据里。号称能报物理尺寸的网站,都是拿报告的分辨率除以一个假设的像素密度算出来的,只有假设碰巧蒙对时才准,所以这类数字看看就好,别当测量值。

查屏幕分辨率需要下载东西吗?

不用。这些数值是从浏览器自带的屏幕和窗口接口里直接读的,任何页面都能读,不需要插件、扩展,也不用安装。什么都不用下,也不传任何数据,因为页面读的本来就是浏览器手里现成的信息,不需要联网。