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

简介: 利用 CSS Overview 面板重构优化你的网站

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


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


什么是 CSS Overview Panel



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


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

4b6161119c87474fb9705f1fef0e0d30_tplv-k3u1fbpfcp-zoom-1.png


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


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

CSS Overview Panel 有什么功能?


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


8e9e4003587e4d808ffbc8db15d6f046_tplv-k3u1fbpfcp-zoom-1.png

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


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


image.png

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


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


99fe35e801414c7fbde9564461c31d60_tplv-k3u1fbpfcp-zoom-1.png

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

ca5d8192e1c94db7b194177ef4b57568_tplv-k3u1fbpfcp-zoom-1.png


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


437290d2dfde4edeb79d138e7a21afe3_tplv-k3u1fbpfcp-zoom-1.png


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

556f1a4148da4676ac1f28b1bf88b488_tplv-k3u1fbpfcp-zoom-1.png

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


9e1afb4b5d0140f2998bb5a60fa9dbd9_tplv-k3u1fbpfcp-zoom-1.png


如何更好的利用 CSS Overview?



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


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


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

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

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


更好的精简我们的 CSS 代码


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


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


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


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

26bb3500010f4d2d897d05064a72b159_tplv-k3u1fbpfcp-zoom-1.png


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

fda0f6ea2990489a8172c61ca6f4f035_tplv-k3u1fbpfcp-zoom-1.png

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


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


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


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

eadf8ceb5b8345c6a0b42148a8bb550a_tplv-k3u1fbpfcp-watermark.png


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

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


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


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


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

目录
相关文章
|
2月前
|
前端开发
导航新风尚:CSS梯形设计,让网站菜单不再单调!
导航新风尚:CSS梯形设计,让网站菜单不再单调!
|
3月前
|
存储 缓存 前端开发
常见的css优化方案都有那些
【7月更文挑战第7天】 - 合并压缩CSS减少HTTP请求,提高加载速度。 - 精简选择器,避免复杂嵌套和通配符,提升渲染效率。 - 利用继承和公共样式减少重复代码。 - 减少浮动和定位,使用Flexbox或Grid优化布局。 - 避免CSS表达式,使用CSS Sprites减少请求。 - 控制重排重绘,减少性能消耗。 - 利用CSS变量和现代布局技术提高灵活性。 - 服务器端启用GZIP压缩,客户端缓存CSS。 综合优化可显著提升网页性能。
39 4
|
4月前
|
前端开发 JavaScript UED
CSS进阶 - CSS性能优化
【6月更文挑战第17天】**CSS性能优化关乎美观与速度。减少无用和重复样式,简化选择器,避免频繁重绘与回流,预加载关键CSS,以及模块化代码,能提升加载速度和用户体验。通过代码审查、工具辅助、选择器优化、使用transform和opacity、CSS预加载、以及文件拆分和模块化,开发者可应对复杂网页的性能挑战。**
44 2
|
1天前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML与CSS之旅
【9月更文挑战第31天】在这个数字时代,拥有一个个人博客网站是展示自我、分享知识和连接世界的重要方式。本文将引导你通过简单的HTML和CSS知识,一步步构建起你的在线空间。无论你是编程新手还是希望通过实践加深理解,这篇文章都将是你的理想指南。我们将探索基本概念,实现页面布局,并点缀以个性化样式,最终将静态页面转变为动态交互式网站。准备好了吗?让我们开始吧!
|
7天前
|
前端开发
网站变灰白css
本文介绍了如何通过CSS滤镜效果实现网站变为灰白色,具体方法是在HTML或BODY标签上应用`filter`属性,使用`progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)`和`-webkit-filter: grayscale(100%)`实现灰度效果。
19 0
|
2月前
|
前端开发
视觉充电:CSS动画特效,为网站带来动力与活力!(一键复制)
视觉充电:CSS动画特效,为网站带来动力与活力!(一键复制)
|
2月前
|
移动开发 前端开发 JavaScript
Css3在移动设备上的优化点
Css3在移动设备上的优化点
|
2月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML、CSS与JavaScript之旅
在这个数字时代,拥有一个个性化的网络空间已成为许多人的梦想。本文将引导你了解如何从零开始,使用HTML、CSS和JavaScript创建属于自己的博客网站。我们将探索这些技术的基础概念,并通过实际代码示例展示如何将静态页面转变为动态交互式网站。无论你是编程新手还是希望扩展技能的开发者,这篇文章都将为你提供一条清晰的学习路径。【8月更文挑战第31天】
|
2月前
|
前端开发
视觉冲击:CSS实现相册图片的放大效果,让网站首页更震撼!
视觉冲击:CSS实现相册图片的放大效果,让网站首页更震撼!
|
4月前
|
数据库 数据安全/隐私保护 Python
Web实战丨基于django+html+css+js的电子商务网站
Web实战丨基于django+html+css+js的电子商务网站
66 3