美文网首页了不起的 WEB 前端
第 004 期 提高页面渲染速度的 3 个 CSS 技巧

第 004 期 提高页面渲染速度的 3 个 CSS 技巧

作者: 前端GoGoGo7 | 来源:发表于2021-04-05 22:49 被阅读0次

提到提高页面渲染速度,我们第一想到的是优化 JavaScript。其实通过优化 CSS 也能提高页面渲染速度。

优化方案

1. 延时渲染屏幕外的内容 - content-visibility: auto

很长的页面会有大量的内容在屏幕外。如果只渲染屏幕内的内容,屏幕外的内容在出现时才渲染,能大大的节约渲染时间。

CSS Containment Module Level 2 模块 新增了 content-visibility 属性。这个属性能推迟选择的HTML元素。

当有大量离屏内容时,需要延时渲染屏幕外的内容,只需在元素上使用 content-visibility: auto

在屏幕外被延迟渲染的元素,未设置高度时,在浏览器中表现类似于 display: none。当发生滚动时,元素出现后才发生渲染行为,被渲染后高度也会相应更新,因此滚动条行为会以非预期方式进行。解决这个问题,可以设置元素未渲染时的高度: contain-intrinsic-size: 未渲染时的高度。代码如下:

.target-elem {
  content-visibility: auto;
  contain-intrinsic-size: 200px;
}

注意:如果元素或其子元素显式设置了高度,会被覆盖 contain-intrinsic-size 的值。

局限性:

  • 此功能仍处于试验阶段,截至目前,Firefox,IE,Safari 不支持。

2. 提升渲染的性能 - will-change

元素的样式上设置 will-change 后,会开启 GPU 加速,GPU 会优化该元素的渲染。写法:

.transition {
  will-change: opacity;
}

局限性:

  • 应作为“最后的手段”,避免过早优化。
  • 应在父元素上使用 will-change,在子元素上使用动画。
  • 有节制的使用,当元素变化之前和变化之后,通过脚本切换 will-change 的值,并在动画完成后,将元素的 will-change 删除。

3. 让滚动更流畅 - scroll-behavior

设置 scroll-behavior 能让滚动更流畅。 scroll-behavior 接受的值:
可接受属性值:

  • auto: 滚动框立即滚动
  • smooth: 通过定义事件函数来实现平稳滚动

效果对比:

参考文档

相关文章

  • 第 004 期 提高页面渲染速度的 3 个 CSS 技巧

    提到提高页面渲染速度,我们第一想到的是优化 JavaScript。其实通过优化 CSS 也能提高页面渲染速度。 优...

  • 前端优化

    优化的目的:提高用户体验,加快网页反应速度。 加载页面和静态资源 页面渲染 代码规范 1、CSS放前面,JS放后面...

  • 3DS MAX玩家必看!70个提高渲染速度的小技巧

    3DS MAX玩家必看!70个提高渲染速度的小技巧 (注:节省RAM不一定会加快渲染速度.请同学们根据实际情况加以...

  • 如何提高CSS的渲染速度

    CSS算是前端开发中最简单的一块内容,说起来简单,可能要真正做好也并非一件容易的事。能做很容易,做好却很难,如果仅...

  • 页面加载速度的性能优化问题

    选择以什么方式把css加载到页面中,决定了浏览器显示页面的速度,度量Web性能的一个重要指标就是网页的实际渲染时间...

  • web前端

    一个页面由三部分组成:html、css、javascript HTML 页面的内容 CSS 渲染页面的样式建议直接...

  • IconFont

    1、传统图标(Sprite 雪碧图)css Sprite 优点:减少http请求次数,使页面加载速度更快,提高网页...

  • CSS语法,选择器

    CSS: 定义:css全称是层叠样式表; 作用:为页面内容设置好看的样式,渲染页面内容; 注释:css注释格式:/...

  • [ CSS3 系列] 一文读懂 Animation 中的时间函数

    利用 css3 的 Animation 可以创建动画,在许多页面中能够替代 flash、JS 等,提升页面加载速度...

  • 关于性能优化

    渲染引擎 渲染页面的大致流程:(1)解析HTML标签并生成DOM(2)解析CSS规则并生成CSSOM树(3)将DO...

网友评论

    本文标题:第 004 期 提高页面渲染速度的 3 个 CSS 技巧

    本文链接:https://www.haomeiwen.com/subject/roujkltx.html