网站内容优化
今天用 lighthouse 分析博客的性能,发现几个之前不了解的问题,记录一下。
#避免在主线程跑复杂 JS
live2d.js 很耗时
#内嵌关键 JS/CSS,延迟非关键 JS/CSS
#使用 WebP 格式的图片
1 | cwebp -q 50 images/flower1.jpg -o images/flower1.webp |
50表示质量,0是最差,100是最佳。
兼容方案:向新版浏览器提供 WebP 内容,同时保留对旧版浏览器的支持。
1 | <picture> |
#字体设置
有些浏览器在字体文件加载完成之前会隐藏文本。
字体css的font-display
属性设置此行为:
- auto: 字体显示策略由用户代理定义。
- block: 为字体提供一个短暂的阻塞周期和无限的交换周期。
- swap: 为字体提供一个非常小的阻塞周期和无限的交换周期。
- fallback: 为字体提供一个非常小的阻塞周期和短暂的交换周期。
- optional: 为字体提供一个非常小的阻塞周期,并且没有交换周期。
讲人话就是,后三个选项明确指示浏览器使用fallback字体。
1 | @font-face { |