如何利用 CSS Overview 面板重构优化你的网站


Posted in HTML / CSS onOctober 24, 2021

本文将向大家介绍 Chrome 87 开始支持的 CSS Overview Panel,并且介绍如何更好地利用这个面板。通过 CSS Overview Panel,可能可以帮助我们:

  • 更准确(高保真)的还原设计稿,辅助设计走查环节
  • 更好的精简我们的 CSS 代码
  • 辅助进行网站的可访问性提升
  • 对网站样式的整体概况有更清晰的认识

什么是 CSS Overview Panel

CSS Overview Panel 直译过来就是 CSS 概览面板,它是从 Chrome 87 开始支持的一项实验室功能。

属于控制台 DevTop 下的一个 TAB:

如何利用 CSS Overview 面板重构优化你的网站

默认这个实验室功能是关闭的,也就是我们打开控制台是看不到的,那么我们如何打开呢?两种方式:

  • 从 DevTops 的 Setting 下的 Experiment 菜单中,启用 CSS Overview
  • 打开 DevTops,通过 Cmd + Shift + P 呼出 Command Menu,输入 Show CSS Overview

CSS Overview Panel 有什么功能?

OK,打开 CSS Overview 之后,去到你希望审查的网站下。点击按钮:

如何利用 CSS Overview 面板重构优化你的网站

几秒之后,该插件机会对当前页面的 CSS 进行分析,输出一份简单的报告(有点类似于 LightHouse):

这里我找到了一个 GIF 图,进行一个简单的演示:

如何利用 CSS Overview 面板重构优化你的网站

可以看到,整个面板分为几个模块(下面我切到 DevTop 中文模式贴图展示):

Overview Summary(整体概述):整体 CSS 信息概况,例如元素数量,样式表数量,样式规则数量等等。

如何利用 CSS Overview 面板重构优化你的网站

Cpors(使用颜色概况):罗列出了页面中使用到的所有颜色相关信息,背景色使用了哪些、文字色使用了哪些、边框使用了哪些颜色、文本与其背景色颜色对比度,可以通过点击追溯到具体某个颜色使用在哪个元素

如何利用 CSS Overview 面板重构优化你的网站

Font info(字体信息):衡量字体的使用情况以及它们在样式表中出现的频率。包括字体重量和行高指标,可以选择字体指标来显示受影响的元素,可以通过点击溯源

如何利用 CSS Overview 面板重构优化你的网站

Unused declarations(未使用的样式规则):未使用的 CSS 规则,可以通过点击追溯到具体样式代码。

如何利用 CSS Overview 面板重构优化你的网站

Media queries(媒体查询):CSS媒体查询的细节(如最小/最大宽度值)以及它们在样式表中出现的频率。可以通过点击查看具体媒体查询相关代码

如何利用 CSS Overview 面板重构优化你的网站

如何更好的利用 CSS Overview?

那么,我们应该在什么时候开始使用它或者它能够帮助我们做些什么呢?我个人认为一些比较核心的点:

更准确(高保真)的还原设计稿,辅助设计走查环节

在对设计稿还原有更高要求的页面上,在设计走查环节,非常适合利用这个面板去查看页面的颜色使用、字体使用是否合乎规范。

因为通常设计师会制定一系列规范,譬如什么地方用什么颜色/字体。但是由于前端在重构设计稿的过程中,因为某些原因(譬如取色器不够精确,想当然的认为某些色值是黑色或者白色)。

那么利用 Cpor 和 Font 模块,可以明确的找到不在规范内的颜色或字体,进行修改。

更好的精简我们的 CSS 代码

这一点非常好理解,利用 Unused declarations(未使用的样式规则)模块,我们可以很好的找到未被使用的 CSS 代码,在确定后剔除掉。

辅助进行网站的可访问性提升

这一点我认为还是非常有意义的。可访问性(Accessibility),又称为 A11Y 我网站开发过程中非常重要的一环。它的另外一个叫法是无障碍设计。

提升网站可访问性的通常意义在于帮助一些残障人士,更好的使用我们的网站。当然,做好可访问性相关的内容其实是对所有人都更友善的。因为在一些,特殊场景下,我们也可能是残障人士,如下图:

如何利用 CSS Overview 面板重构优化你的网站

而在 CSS Overview 面板中,唯一与可访问性相关的是 Cpor 模块下的对比度(Contrast issues):

如何利用 CSS Overview 面板重构优化你的网站

这里它罗列出来了页面上有文本展示的地方,它的文字颜色和背景颜色是否符合 WCAG AA 规范所规定需要达到的对比度数值。

最权威的互联网无障碍规范 —— WCAG AA规范规定,所有重要内容的色彩对比度需要达到 4.5:1 或以上(字号大于18号时达到 3:1 或以上),才算拥有较好的可读性。

这里就有一个概念 -- 颜色对比度,简单地说,描述就是两种颜色在亮度(Brightness)上的差别。运用到我们的页面上,大多数的情况就是背景色(background-cpor)与内容颜色(cpor)的对比差异。

借用一张图 -- 知乎 -- 助你轻松做好无障碍的15个UI设计工具推荐

如何利用 CSS Overview 面板重构优化你的网站

很明显,上述最后一个例子,文字已经非常的不清晰了,正常用户都已经很难看得清了。

而利用好 CSS Overview 里面的这个功能,我们可以轻松的找到不达标的地方,进行修改,增强我们页面的可访问性。

关于 Web 可访问性的更多内容,你可以浏览我的这篇文章获取更多信息 -- 前端优秀实践不完全指南

对网站样式的整体概况有更清晰的认识

最后这一点,通过整体面板的信息,我们能够对我们的网站有一个更深刻的认识,它也可以反过来辅助我们对页面进行各项优化,指导我们的性能优化、页面重构的新方向。

最后

当然,CSS Overview Panel 的功能远不止上述几点,还有更多场景等待我们继续挖掘。我认为这个 Panel 是我们打开了就不愿意再关掉的一个功能,合理利用,多多利用它,能够成为我们开发环节中非常好的一个工具。

到此这篇关于利用 CSS Overview 面板重构优化你的网站的文章就介绍到这了,更多相关CSS Overview 面板重构内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
CSS3对图片照片进行边缘模糊处理的实现
Aug 08 HTML / CSS
纯CSS和jQuery实现的在页面顶部显示的进度条效果2例(仿手机浏览器进度条效果)
Apr 16 HTML / CSS
css3 中的新特性加强记忆详解
Apr 16 HTML / CSS
用CSS3实现无限循环的无缝滚动的示例代码
Nov 01 HTML / CSS
巧用CSS3的calc()宽度计算做响应模式布局的方法
Mar 22 HTML / CSS
css3媒体查询中device-width和width的区别详解
Mar 27 HTML / CSS
Html5上传图片 移动端、PC端通用代码
Jun 08 HTML / CSS
HTML5 File API改善网页上传功能
Aug 19 HTML / CSS
html5 Canvas画图教程(1)—画图的基本常识
Jan 09 HTML / CSS
HTML5 Canvas中绘制矩形实例
Jan 01 HTML / CSS
HTML5如何使用SVG的方法示例
Jan 11 HTML / CSS
纯CSS如何禁止用户复制网页的内容
Nov 01 HTML / CSS
基于HTML十秒做出淘宝页面
css 边框添加四个角的实现代码
HTML基础详解(下)
Oct 16 #HTML / CSS
HTML基础详解(上)
Oct 16 #HTML / CSS
CSS基础详解
HTML5+CSS+JavaScript实现捉虫小游戏设计和实现
小程序实现悬浮按钮的全过程记录
Oct 16 #HTML / CSS
You might like
多php服务器实现多session并发运行
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(1)
2006/10/09 PHP
使用adodb lite解决问题
2006/12/31 PHP
php mssql 分页SQL语句优化 持续影响
2009/04/26 PHP
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
2009/10/22 PHP
PHP5权威编程阅读学习笔记 附电子书下载
2012/07/05 PHP
apache配置虚拟主机的方法详解
2013/06/17 PHP
PHP判断一个数组是另一个数组子集的方法详解
2017/07/31 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
jquery实现的可隐藏重现的靠边悬浮层实例代码
2013/05/27 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
实现前后端数据交互方法汇总
2015/04/07 Javascript
jQuery简单实现图片预加载
2015/04/20 Javascript
代码分析jQuery四种静态方法使用
2015/07/23 Javascript
AngularJS 2.0新特性有哪些
2016/02/18 Javascript
BootStrap Table 获取同行不同列元素的方法
2016/12/19 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
关于jQuery库冲突的完美解决办法
2017/05/20 jQuery
深入探究node之Transform
2017/07/20 Javascript
AngularJS基于http请求实现下载php生成的excel文件功能示例
2018/01/23 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
[01:34]2014DOTA2展望TI 剑指西雅图VG战队专访
2014/06/30 DOTA
[01:20:47]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第一场 1月19日
2021/03/11 DOTA
Python单例模式实例详解
2017/03/01 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
python实现程序重启和系统重启方式
2020/04/16 Python
Python-openCV开运算实例
2020/07/05 Python
Python程序慢的重要原因
2020/09/04 Python
2分钟教你实现环形/扇形菜单(基础版)
2020/01/15 HTML / CSS
说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
2012/05/24 面试题
《长江之歌》教学反思
2014/04/17 职场文书
大学活动总结格式
2014/04/29 职场文书
禁毒宣传活动总结
2014/08/26 职场文书
2015年女工委工作总结
2015/07/27 职场文书
浅谈CSS不规则边框的生成方案
2021/05/25 HTML / CSS