谷歌浏览器 | Chrome DevTools系统学习篇-Device Mode

大家好,文接上回谷歌浏览器 | Chrome DevTools系统学习篇-概述。所谓“工欲善其事,必先利其器”,我们进一步来熟悉谷歌开发者工具。今天分享的是Device Mode,使用设备模式来估算您的页面在移动设备上的外观和性能。


设备模式是 Chrome DevTools 中的一组功能的名称,可帮助您模拟移动设备。这些功能包括:

 模拟移动设备窗口(自适应模式, 设备尺寸模拟, 添加自定义尺寸设备,输入宽高, 缩放窗口,限制网络, 将窗口旋转到横向,隐藏控件,隐藏控件-设备像素比
隐藏控件-设备类型,隐藏功能--显示设备边框,隐藏功能--显示媒体查询,隐藏功能--显示标尺,隐藏功能--截取屏幕截图,隐藏功能--截取完整尺寸的屏幕截图,隐藏功能--重置为默认值,隐藏功能--关闭DevTools)

此外,在传感器选项卡中(以后对此功能再做介绍):

  • 模拟地理定位
  • 设置方向
  • 强制触摸(可以强制触摸而不是单击)
  • 模拟空闲检测器状态(可以模拟用户状态和屏幕状态的空闲状态更改)

目录

局限性

模拟移动设备窗口

自适应模式

设备尺寸模拟

添加自定义尺寸设备

输入宽高

缩放窗口

限制网络

将窗口旋转到横向

隐藏控件

隐藏控件-设备像素比

隐藏控件-设备类型

隐藏功能--显示设备边框

隐藏功能--显示媒体查询

隐藏功能--显示标尺

隐藏功能--截取屏幕截图

隐藏功能--截取完整尺寸的屏幕截图

隐藏功能--重置为默认值

隐藏功能--关闭DevTools

关注我,我们一起进步!

欢迎点赞、评论,谢谢!~


局限性

先说一下Device Mode(设备模式)的局限性:

  • 设备硬件
  • GPU和CPU的行为无法模拟。
  • 浏览器的用户界面(UI)
  • 系统显示,比如地址栏,不会被模拟。
  • 本地显示器,如 <select> 元素,不会模拟为一个模态列表。
  • 一些增强功能,如打开数字输入键盘,可能与实际设备的行为有所不同。
  • 浏览器功能
  • WebGL可以在模拟器中实现,但iOS 7设备不支持。
  • Chrome不支持MathML,但iOS 7设备支持。
  • iOS 5定向缩放Bug不会被模拟。
  • line-height CSS属性在模拟器中运行,但Opera Mini不支持。
  • CSS规则的限制,如在Internet Explorer中的哪些限制,不会被模拟。
  • APPCache
  • 模拟器不会覆盖AppCache 的 清单文件 或 查看源代码请求 的UA

尽管有这些限制,Device Mode(设备模式)对于大多数任务都足够稳健。当你需要在真实设备上测试时,您可以使用远程调试从笔记本电脑或台式机查看、更改、调试和分析页面代码。

模拟移动设备窗口

点击切换设备图标,开启模拟移动视口。

 默认情况下,设备工具栏在视口中打开,尺寸设置为自适应。

自适应模式

拖动手柄以将视口大小调整为您需要的任何尺寸。

或者,在宽度和高度框中输入特定值。

或者,使用宽度预设栏通过单击将宽度设置为以下值之一:

Mobile S

(小型移动设备)

Mobile M

(中型移动设备)

Mobile L

(大型移动设备)

Tablet

(平板电脑)

Laptop

(笔记本电脑)

Laptop L

(大型笔记本电脑)

4K

(4K屏设备)

320px375px425px768px1024px1440px2560px

设备尺寸模拟

要模拟特定移动设备的尺寸,请从尺寸列表中选择该设备。

 需要添加自定义设备,点击尺寸最下方的修改(Edit…),这里可以勾选需要模拟调试的设备尺寸,或者点击添加自定义设备

添加自定义尺寸设备

可以输入设备名称,宽度,高度,设备像素比,用户代理字符串几个选项设置自己需要模拟的设备。

这里提供一份设备参数,便于大家添加复制使用:

 参数如下:

iPhone 11,414,896,2,"Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.4 Mobile/15E148 Safari/604.1"
iPhone 11 Pro,375,812,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 13_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.4 Mobile/15E148 Safari/604.1"
iPhone 11 Pro Max,414,896,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 13_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
"iPad 10.2"" (2019)",810,1080,2,"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Safari/605.1.15"
iPhone Xs,375,812,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1"
iPhone Xs Max,414,896,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1"
iPhone XR,414,896,2,"Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1"
iPhone X,375,812,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B93 Safari/604.1"
Samsung Galaxy Fold,586,820,2.625,"Mozilla/5.0 (Linux; Android 9; SM-F900U1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.93 Mobile Safari/537.36"
Samsung Galaxy Note10,412,869,2.625,"Mozilla/5.0 (Linux; Android 9; SM-N970XU) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.93 Mobile Safari/537.36"
Samsung Galaxy Note10+,412,869,3.5,"Mozilla/5.0 (Linux; Android 9; SAMSUNG SM-N975XU) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/10.2 Chrome/71.0.3578.99 Mobile Safari/537.36"
Samsung Galaxy A20,980,1734,2.25,"Mozilla/5.0 (Linux; Android 9; SM-A205U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.93 Mobile Safari/537.36"
Samsung Galaxy S10,412,869,3.5,"Mozilla/5.0 (Linux; Android 9; SM-G973U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.105 Mobile Safari/537.36"
Samsung Galaxy S10+,412,869,3.5,"Mozilla/5.0 (Linux; Android 9; SM-G975U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.105 Mobile Safari/537.36"
Samsung Galaxy S10e,360,760,3,"Mozilla/5.0 (Linux; Android 9; SM-G970U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.105 Mobile Safari/537.36"
Samsung Galaxy S9,360,740,3,"Mozilla/5.0 (Linux; Android 8.0.0; SM-G960U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36"
Samsung Galaxy S9+,320,658,4.5,"Mozilla/5.0 (Linux; Android 8.0.0; SM-G965U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.111 Mobile Safari/537.36"
Samsung Galaxy Note 9,412,846,3.5,"Mozilla/5.0 (Linux; Android 8.1.0; SM-N960U Build/M1AJQ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.91 Mobile Safari/537.36"
Google Pixel 4,353,745,3,"Mozilla/5.0 (Linux; Android 10; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Mobile Safari/537.36"
Google Pixel 4 XL,412,869,3.5,"Mozilla/5.0 (Linux; Android 10; Pixel 4 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Mobile Safari/537.36"
Google Pixel 3,393,786,2.75,"Mozilla/5.0 (Linux; Android 9; Pixel 3 Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36"
Google Pixel 3 XL,412,846,3.5,"Mozilla/5.0 (Linux; Android 9; Pixel 3 XL Build/PQ1A.181105.017.A1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.158 Mobile Safari/537.36"
Palm PVG100,360,640,2,"Mozilla/5.0 (Linux; Android 8.1.0; PVG100 Build/OPM1.171019.019) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.126 Mobile Safari/537.36"
iPhone 8 Plus,414,736,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B93 Safari/604.1"
iPhone 8,375,667,2,"Mozilla/5.0 (iPhone; CPU iPhone OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B93 Safari/604.1"
iPhone 7 Plus,414,736,3,"Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B150 Safari/604.1"
iPhone 7,375,667,2,"Mozilla/5.0 (iPhone; CPU iPhone OS 11_1_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/11.0 Mobile/14E304 Safari/604.1"
iPhone SE,320,568,2,"Mozilla/5.0 (iPhone; CPU iPhone OS 9_3 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13E233 Safari/601.1"
iPad Mini 4,768,1024,2,"Mozilla/5.0 (iPad; CPU OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B93 Safari/604.1"
"iPad Pro (10.5"")",834,1112,2,"Mozilla/5.0 (iPad; CPU OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B101 Safari/604.1"
"iPad Pro (12.9"")",1024,1366,2,"Mozilla/5.0 (iPad; CPU OS 11_1 like Mac OS X) AppleWebKit/604.3.5 (KHTML, like Gecko) Version/11.0 Mobile/15B101 Safari/604.1"
Red Hydrogen One,412,732,3.5,"Mozilla/5.0 (Linux; Android 8.1.0; H1A1000 Build/H1A1000.010ho.01.01.01r.089) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.91 Mobile Safari/537.36"
Samsung Galaxy Tab S3,768,1024,2,"Mozilla/5.0 (Linux; Android 7.0; SM-T827V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.83 Safari/537.36"
Samsung Galaxy Tab S4,1138,712,2.25,"Mozilla/5.0 (Linux; Android 8.1.0; SM-T837A) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.80 Safari/537.36"
Samsung Galaxy Note 8,412,846,3.5,"Mozilla/5.0 (Linux; Android 7.1.1; SAMSUNG SM-N950U Build/NMF26X) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/6.2 Chrome/56.0.2924.87 Mobile Safari/537.36"
Samsung Galaxy S8,360,740,3,"Mozilla/5.0 (Linux; Android 7.0; SM-G950U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36"
Samsung Galaxy S8+,412,846,3.5,"Mozilla/5.0 (Linux; Android 7.0; SM-G955U Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36"
Samsung Galaxy S7,360,640,4,"Mozilla/5.0 (Linux; Android 6.0.1; SM-G935V Build/MMB29M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.83 Mobile Safari/537.36"

比如我设置一个ipone11pro的栗子:

 如上图,设置设备类型,这个用来模拟移动设备或桌面设备。这边只是预设,在尺寸自适应下设置中还可以再切换设备类型。设备尺寸添加后,勾选上,尺寸中就可以选择这个尺寸了。

输入宽高

在尺寸自适应下,在宽度和高度框中输入特定值。选了特定尺寸后,禁止输入。

缩放窗口

使用缩放列表来放大或缩小。

自动调整缩放级别- 自动将缩放级别设置为最大可用空间(自适应尺寸下仅显示这个)
适合窗口大小100% - 如果您想要测试图像上的DPI,显式百分比是有用的(其他固定尺寸后新增)

限制网络

要限制网络和 CPU,请从Throttle列表中选择Mid-tier mobile(中端移动设备)或Low-end mobile(低端手机)、(offline)离线

 这边可以和network(网络选项卡)中限制网络和CPU同时配置: 

将窗口旋转到横向

单击“旋转” 将视口旋转为横向。请注意,如果您的设备工具栏很窄,则旋转按钮会消失。

隐藏控件

在窗口右上方的三个点,展开可以显示和移除设备像素比设备类型两个控件:

隐藏控件-设备像素比

设备像素比 (DPR)是硬件屏幕上的物理像素与逻辑 (CSS) 像素之间的比率。换句话说,DPR 告诉 Chrome 使用多少屏幕像素来绘制一个 CSS 像素。Chrome 在 HiDPI(每英寸高点数)显示器上绘图时使用 DPR 值。

如果您想在非Retina屏的机器上模拟Retina屏设备,或反过来,只需要调整Device pixel ratio(设备像素比)就可以了。Device pixel ratio(设备像素比)(DPR)是逻辑像素和物理像素之间的比率。具有Retina屏的设备,例如Nexus 6P,比常规设备具有更高的像素密度,它可以影响内容的视觉清晰度和视觉大小。

网上有一些关于Device pixel ratio(设备像素比)(DPR)的例子:

  • CSS媒体查询,比如:@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { ... }
  • CSS image-set 规则。
  • 图片上的srcset属性。
  • window.devicePixelRatio 属性。

如果你有一个原生Retina显示,您会注意到,低 "Dots Per Inch" (DPI) 的资源看起来像素化,而较高DPI的资源是清晰的。为了在标准显示器上模拟这种效果,将DPR设置为2并通过比例缩放视口。2x的资源看起来依然清晰,而1x将看起来像素化。

隐藏控件-设备类型

尺寸自适应下设置中还可以再切换设备类型:

渲染方式是指 Chrome 将页面呈现为移动视口还是桌面视口。

光标图标是指将鼠标悬停在页面上时看到的光标类型。

事件触发是指当您与页面交互时页面是否触发touchclick事件。

选项渲染方式光标图标事件触发
Mobile(移动的)移动的圆圈触碰

Mobile(No Touch)

手机(无触摸)

移动的普通的点击

Desktop (桌面)

桌面普通的点击

Desktop (Touch)

桌面(触摸)

桌面圆圈触碰

这个在添加设备尺寸时,与默认的类型选项一致。

注意:非自适应的尺寸下,分辨率,设备像素比,设备类型等都是禁用状态:

隐藏功能--显示设备边框

注意:如果您没有看到特定设备的设备框架,这可能意味着 DevTools 没有针对该特定选项的设置。DevTools 显示了 Nest Hub 的设备边框:

隐藏功能--显示媒体查询

媒体查询是响应式网页设计的一个重要组成部分。要查看媒体查询检查器,在三点菜单中点击Show Media queries(显示媒体查询)。


DevTools 会检测样式表中的媒体查询,并在顶部标尺中将其显示为彩色条。
媒体查询的颜色编码如下: 

  • 定位最大宽度的查询
  • 定位范围内宽度的查询
  • 定位最小宽度的查询

媒体查询对于前端开发人员可以直接定位@media声明的样式:

隐藏功能--显示标尺

DevTools 在视口上方和左侧显示标尺,标尺的尺寸单位是像素。

隐藏功能--截取屏幕截图

要捕获您当前在视口中看到的内容的屏幕截图。

 

隐藏功能--截取完整尺寸的屏幕截图

要捕获整个页面的屏幕截图,包括当前在视口中不可见的内容。

隐藏功能--重置为默认值

这个功能点击后,某些配置就恢复默认初始值。

隐藏功能--关闭DevTools

这个功能点击后,关闭DevTools,取消移动设备模拟状态。

 以上就是对谷歌浏览器,Device Mode模块的学习。我们学习了使用Device Mode(设备模式)的屏幕模拟器测试你的网站的响应式布局。学习了保存自定义预设,以便以后轻松访问它们。但要知道设备模式不能完全代替真实设备的测试, 注意其局限性。

关注我,我们一起进步!

欢迎点赞、评论,谢谢!~

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值