web新技术双周报(8.16-8.30)
chrome(100-101)
- @support:用来检测浏览器是否支持某个期望的样式功能,支持声明语法、函数语法、not操作符、and操作符、or操作符
相比于使用js检测,该方法不会导致页面闪现,避免多余辅助代码等问题
@support文档:@supports - CSS(层叠样式表) | MDN
js提供了Window.CSS.supports()检查浏览器对css属性是否支持
CSS.supports()文档:CSS.supports() - Web API 接口参考 | MDN
- Recorder
可以通过该功能录制 Web 页面的操作并支持回放,编辑,测量性能 等诸多功能。
Chrome101支持将Recoder导出、导入json文件
Recorder用途:
-
测试某一个业务流程在各种不同的网络和硬件环境下的表现,甚至你可以看其在不同平台的表现(比如 PC,手机,平板等)。
-
测试同学录制一段Recorder, 然后发送给开发,开发根据这段视频定位问题。
-
自动化测试。录制一段视频,然后通过修改其中部分参数的形式来自动化生成很多测试用例。
在回放的过程中,还可以获取页面的性能数据
如何分析页面性能数据:segmentfault.com/a/119000002…
Recorder文档:developer.chrome.com/docs/devtoo…
- 代码段Snippets
它允许你存放 JavaScript 代码到 DevTools 中,方便你复用这些 JavaScript 代码段,
入口:打开控制台->选择Sources->在右边点击>>箭头可以选择Snippets(默认是隐藏着的)->添加我们的代码片段
Snippets文档:developer.chrome.com/docs/devtoo…
Snippets用途:可以保存经常会用到的工具代码,例如获取 url 参数,rgb转16进制,打印下当前页面的性能数据,给所有的 span 加个样式,要用的时候直接拿出来用,非常方便
- 级联层@layer
@layer声明了一个级联层,同一层内的规则将级联在一起, 这给予了开发者对层叠机制的更多控制。
作用:一般会使用选择器权重和顺序作为控制级联的方法,但是这样却会时常碰到:
使用较高权重的选择器来防止你的代码被后面的代码(或别人的代码)覆盖。但这也会引起另一个不良的现象,可能会在代码中新增很多带有 !important 的样式规则,这本身就会引起更多的问题,比如 !important 在 CSS 样式表中随处可见,需要覆盖的时候难以被覆盖 。通过@layer规则,可以让 CSS 声明的优先级下降或提升一整个级联级别。
优先级:page>component>base
@layer文档:developer.chrome.com/blog/cascad…
详解日后定会大规模使用的CSS @layer 规则 « 张鑫旭-鑫空间-鑫生活
5.支持 hwb() 颜色函数
在样式边栏里,按住 Shift 键,然后点击任意颜色并留意颜色格式的变化。会发现 HWB 颜色格式已经被添加上去。(也可在rgb和16进制之间切换)
HWB (hue,whiteness and blackness)
表示色相、白色浓度、黑色浓度。跟HSL一样,色相值可以是0-360度数,其他两个参数则是控制此色相中应该混合多少白色和黑色(白色浓度跟黑色浓度可以直接导致最后结果是全白还是全黑)。如果白色浓度跟黑色浓度的比例越接近,越会增加灰调。
可以在该链接上玩一下这个函数codepen.io/smashingmag…