这样就能在 Settings
中看见 Experiments
选项,勾选对应功能如 CSS Overview
后重启浏览器,就可以使用该功能。
媒体查询(以及指向相关css源的链接)
各种css选择器统计(例如类选择器与id选择器)
JavaScript 可以这样获取你的地理位置:
navigator.geolocation.getCurrentPosition(console.log)
在 Chrome DevTools 的 Sensors 面板中,你可以用预置的或者自己定义的地址重写经纬度。该功能可以用来调试使用地理位置的页面。操作如下:
打开 Sensor
面板(如图操作或快捷键 Ctrl Shift P
输入 sensor
回车)
选择一个预置地址或点击 Manage
自定义新的地址(地名,经纬度)
在 Console
面板下输入 navigator.geolocation.getCurrentPosition(console.log)
观察地址变化。
Ctrl Shift P
输入Show Performance Monitor
回车即可调出性能监视器,其具有实时更新的可视化功能,能突出显示页面中的性能瓶颈。当你与页面交互时(滚动、导航等),可视化监控数据随之更新。面板左边的性能指标是可以开关的,有助于理解可视化信息。可在 Performance Monitor 中查看高层的性能概况,然后在 Performance 面板中对异常峰值(如滚动页面时CPU的某一峰值)做进一步调查。
First Paint:首次绘制
First Contentful Paint:首次内容绘制
First Meaningful Paint - 首次有效绘制(指页面的首要内容出现在屏幕上的时间)
Largest Contentful Paint:最大内容绘制
DOMContentLoaded Event:DOMContentLoaded事件,是HTML文档(包括CSS、JS)被加载以及解析完成之后触发
Onload Event:Onload事件,是在页面的其他资源如图片、字体、音频、视频加载完成之后触发
LCP
标记上,可以在页面上突显相关元素;点击 LCP
标记,就可以在 Summary 面板中找到相关的节点,点击该节点便能直接跳转到 Elements 面板中该元素的DOM节点上。AudioContexts
(Web Audio API的一部分)的详细信息,如下:Ctrl Shift P
输入render
调出 Rendering Drawer,勾选 Layout Shift Regions
可使用该功能。布局变换会在页面的整个生命周期中出现。比如,页面顶部懒加载的 cookie 条可能导致它下方的所有内容向下移动,这就是布局变换,布局变换会产生一些负面影响:Copy > Copy styles
即可使用CSS复制提取功能。这个功能特别有用,因为 css 通常分散在许多选择器中,想要准确地提取需要的内容非常的麻烦。该功能甚至包括自定义的 css 变量(如果有定义的话)。Application
面板中的 Service Workers
找到。选择一个 Service Worker,点击 Source
将打开 Sources
面板编辑器定向到线程来源,这里你可以使用调试功能,如打断点。addEventListener('fetch', event => {
const url = new URL(event.request.url);
});
import('/test.js')
) 等操作,就能触发 Service Worker 的 fetch
事件,然后就会停在 Service Worker 代码中的断点处。Elements
面板中的 Styles
面板里,如果长时间悬停在某 CSS 属性上,会突出显示受该属性影响的所有节点。这适用于影响元素盒模型的css属性,如 margin
和 padding
。如果长时间悬停在 Styles
面板中的 CSS 选择器上,则所有匹配该选择器的元素都会在页面中突出显示。调试时,经常需要清除网站中各种形式的存储数据,想要一次性清除所有数据,有两种方式:
Ctrl Shift P
,输入clear
,选择 Clear site data
Application
面板中,选择 Clear storage
,找到 Clear site data
按钮。(这种方式可以查看数据大小,也可以有选择的进行清除)background-image
属性后输入 lin
会自动给出如下建议值:linear-gradient(45deg, black, transparent)
这些值让你可以立即在页面上看到可视化的结果,这样你就不需要在原型开发时去研究 linear-gradient()
的 CSS 函数。
long task
长任务,会长时间占用主线程资源,进而阻碍其他关键任务的执行/响应,造成页面卡顿,performance
面板中的长任务指示器可以让你对长任务进行高层次监控。操作如下:记录某个网页的网页性能概况
在 Main
线程中标有 Task
的灰色条内查找红旗标记
将鼠标悬停在长任务上,会提示长任务的持续时间
另外,你也可以使用 Long Tasks API 在代码中监测长任务,如下:
const observer = new PerformanceObserver(list => {
list.getEntries().forEach(item => {
// longtask 的类型
console.log(`long task name is: ${item.name}`);
console.log(`long task attribution is:`);
// longtask 的具体信息
console.log(JSON.stringify(item.attribution, null, 2));
});
});
// 仅关注 longtask
observer.observe({ entryTypes: ['longtask'] });
Network
面板中的过滤菜单WS
Message
面板Performance
或者 Audit
,因为违规代码执行的时候就会显示相应的Violations,如强制回流的 JavaScript,使用了 document.write
的 JavaScript,执行缓慢的 setTimeout
处理程序,效率低下的时间侦听器等等 。操作如下:在 Console
面板中点击 Default levels
下拉框,选择 Verbose
在过滤框中输入 violation
Ctrl Shift P
然后输入 folding
选择 Enable code folding
或者 setting->Preferences->Sources->Code folding
你可以在 Source
面板的编辑器和 Network
面板的 Preview
窗口下折叠 CSS 和 JavaScript 代码,这样有助于提高代码的可读性。DevTools 中有一些有关颜色选择的技巧,以下是其中三个比较有用的功能:
1. DevTools 现在在颜色选择器中同时显示 AA 和 AAA 对比度,并在你网页的前景色和背景色对比度差时给出警告,这能帮助你提高用户的可访问性。
AA级:1.4.3对比度(最小),文本的视觉呈现以及文本图像至少要有4.5:1的对比度,大文本大号文本及大文本图像至少有3:1的对比度;
AAA级:1.4.6对比度(加强),文本的视觉呈现以及文本图像至少要有7:1的对比度,大文本大号文本及大文本图像至少有4.5:1的对比度。
大文本:至少 18pt(24px)或 14pt(19px)bold。
2. 调色板显示自定义的颜色,显示以下:
配色方案 – 符合网页设计规范的配色方案;
自定义颜色– 一组你自己选择过的颜色。DevTools 会保存您的自定义调色板,甚至跨页面,直到您删除它;
CSS 自定义变量颜色:css自定义变量中定义的颜色
页面颜色– 从页面的CSS中自动生成的一组颜色。
3. 元素工具栏默认情况下是隐藏的,将鼠标悬停在样式窗格中的CSS样式规则块上时会显示,点击出现的三个点,会出现可快速添加CSS属性的按钮,包括:
text-shadow 文本阴影
box-shadow 盒阴影
color 字体颜色
background-color 背景色
打开 Coverage
面板
选择 Select Start Instrumenting coverage and reload Page
点击 Export
按钮
Logpoints
功能可以在你的 JavaScript 代码中用任意变量快速注入一条 console.log
消息,这样你不必在调试过程中在断点处暂停。以上只是冰山一角,欲知其他,且看下回分解。
~ 未完待续 ~
联系客服