美文网首页
CSS性能优化

CSS性能优化

作者: EWL | 来源:发表于2018-07-22 20:57 被阅读0次

css性能优化

  • CSS选择器性能
    对于整体的性能影响实际上主要体现在DOM渲染查找时的复杂度,比如嵌套要控制层数,规范化选择器的书写以及提高css代码的可维护性和健壮性。
    1.不必要的标签加选择器
//bad
ul#list-wrap {
    color: #ddd;
}

ul.list-container {
    color: #ccc;
}

//good
#list-wrap {
    color: #ddd;
}

  1. 不添加根元素
//bad 
html tr td {
    color: #ddd;
}

//good 
tr td {
    color: #ddd;
}
  1. 不在生产环境中使用通配选择器
  2. 拒绝成串的链式调用
.wrap.top.title {
    color: #000;
}

如果可以,直接将三个类名合并为短横线链接的单个类名

  1. 在必要时减少不必要出现的html标签
  2. 在需要给div等标签添加样式的时候,考虑是否有原生的标签自带样式
<div>this is a bold line</div>
div {
    font-weight: bold;
}

//good
<b>this is a bold line</b>//可以直接替换掉原来的div

  1. 使用less或sass等css预处理器的时候,最高嵌套层级为3层
  • CSS渲染性能

css和html的加载过程如下(图来自mdn)


image.png
  1. 可以通过压缩代码,进行性能优化
  2. 减少阻塞加载,比如少用import

慎重选择高消耗的样式

  1. box-shadows
  2. border-radius
  3. transparency
  4. transforms
  • 减少重排

解决方案:

  1. 在修改DOM的样式时,不去一条条修改而是事先写好队形样式的类名,然后修改DOM的类名即可
  2. 将DOM离线之后进行修改,比如先将DOM display:none之后再进行多次修改,最后将其显示出来,展示最终样式即可
  3. 将需要多次重排的元素,position属性设为absolute或fixed,这样此元素就脱离了文档流,它的变化不会影响到其他元素。例如有动画效果的元素就最好设置为绝对定位
  • 不滥用浮动,一个页面中不超过10次浮动
  • 不声明过多的font-size
  • 标准化各浏览器的前缀
  • 合理使用GPU加速

相关文章

  • 优化web前端性能

    优化css性能很多css需要通过HTTP请求来引入(除非使用内联css),所以尽量优化css。不要使用@impor...

  • Web 性能优化:21 种优化 CSS 和加快网站速度的方法

    摘要: 优化CSS。 原文:Web 性能优化:21 种优化 CSS 和加快网站速度的方法 作者:前端小智 Fund...

  • CSS样式优化(2019-02-18)

    对于CSS优化可以从网络性能和css语法优化两方面来考虑。 1.css压缩 压缩css代码的工具:A、YUI co...

  • 前端收藏文章

    优化CSS重排重绘与浏览器性能

  • 编写高性能可维护的css代码

    本文主要参考MDN|编写高效的CSS、译文编写高性能高质量的CSS代码、《高性能网站建设指南》、谷歌|优化性能、《...

  • H5移动端的性能优化

    H5 移动端的性能优化V1.0 一、渲染优化 二、css优化 三、加载优化 四、脚本执行优化

  • 前端性能优化

    性能优化的话大致有以下几个部分:加载优化图片优化CSS优化脚本优化渲染优化 加载优化 1.减少http请求 基本原...

  • 如何进行网站性能优化

    网站性能优化“六步法则”:一、网页内容优化;二、服务器优化;三、Cookies优化;四、 CSS优化;五、JS优化...

  • CSS性能优化

    选择器尽量不超三层 这样效率会高点 将公共样式抽取出来 代码复用 不要使用@import 会影响浏览器的并行下载

  • CSS性能优化

    css性能优化 CSS选择器性能对于整体的性能影响实际上主要体现在DOM渲染查找时的复杂度,比如嵌套要控制层数,规...

网友评论

      本文标题:CSS性能优化

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