大部分情况下,大家都关注js性能,那么css性能又如何呢?
针对css的性能,有一些最佳实践:
1、把样式表放在文档head标签中
2、不要在ie中使用css表达式
3、避免使用过多的行内样式
浏览器尝试把css选择符和文档中的元素匹配起来,css选择符的编写方式决定了浏览器必须执行的匹配次数,某些选择符会导致浏览器尝试更多匹配,因此开销比简单选择符更高。
下面介绍css选择符大致按照最简单(最小开销)到最复杂(最大开销)顺序列出:
1、ID选择符: #top{}
2、类选择符:.top{}
3、类型选择符:a{}
4、相邻兄弟选择符:h1 + #top{}
5、子选择符 #top > a
6、后代选择符: #top a{}
7、通配选择符 :*{}
8、属性选择符:[href="#index"] {}
9、伪类和伪元素:a:hover{}
看如下规则:
#top a{}
多数人可能猜想浏览器是从左到右匹配规则,因此推测这条规则开销不高,因为页面中有唯一的#top,然后去匹配几个a,所以这样的选择符应该是相当高效的。事实上,CSS选择符是从右到左进行匹配 ,浏览器从右开始,遍历文档中所有的a,然后匹配每个链接的父节点和文档树去查找 a 的祖先元素是否id 为top。
那么如何编写高效的css选择符,下面是一些实践指南:
1、避免使用通配规则
2、不要限定id选择符
在页面中一个ID只能对应一个元素,所以类似 div#top是没有必要的,应简化为#top
3、不要限定类选择符
例如把 li.chapter 改成 .li-chapter 会更好
4、不要试图编写 #top ul li a{} 这样的长选择符,最好创建一个 .list{} 这样的类选择符并把它添加到适当的元素上
5、避免使用后台选择符
6、避免使用子选择符
7、质疑子选择符的用途
检查所有子选择符,然后尽可能用具体的类取代他们
8、依靠继承
分享到:
相关推荐
在网页前端开发中,CSS选择符的使用技巧对页面性能至关重要。本文着重探讨CSS选择符的匹配方式,旨在帮助开发者优化样式规则,提升网页加载速度。 1. 选择符类型及其性能影响: - ID选择符:如`#top{margin-top:50...
下面将详细解释各种CSS选择符及其用途。 1. **类型选择符**: 类型选择符基于HTML元素的标签名来应用样式。例如,`body`选择符将样式应用于整个文档的主体,而`p`选择符则针对所有段落。在给定的例子中,`body`内的...
(8)对于大型项目,考虑使用 CSS 模块化工具,如 CSS Modules 或 CSS-in-JS 解决方案,它们可以自动管理选择符的特异性,防止全局样式冲突,同时提高性能。 总的来说,深入理解 CSS 选择符的匹配方式是提升网页...
本篇将详细解释不同类型的CSS选择符及其用法。 一、类型选择符 类型选择符是基于HTML元素标签名来选择元素的。例如,`body { font-size:12px; }` 将设置整个文档的字体大小为12像素,而`p { color:blue; }` 则会使...
不过,由于它作用于所有元素,使用通配选择符可能会影响页面性能,因此在实际开发中应慎用。 选择符分组则是将多个选择符放在同一对大括号中,这意味着所有这些选择符共享相同的样式规则。这种方法在需要对多种元素...
在互联网时代,CSS是前端开发中不可或缺的技术之一,它负责...高效编写CSS选择符是前端性能优化的重要环节,也是专业开发者应具备的技能之一。在开发过程中,应该不断地学习和实践,以达到编写高效CSS选择符的目的。
### CSS选择符说明 #### 一、类型选择符 类型选择符是最基本的选择符类型,它直接使用HTML标签名称作为选择标准。例如: ```css body { font-size: 12px; } ``` 上述代码表示将整个`<body>`标签内的文字大小...
4. **优化CSS代码**:使用群选择符可以显著减少CSS代码量,提高可读性和性能。课程可能会讨论如何有效地使用群选择符来实现这一点。 5. **实践应用**:在实际的网页设计项目中,如何巧妙地运用群选择符来设计响应式...
7. **最佳实践**:了解如何有效且合理地使用id选择符,避免滥用,以保持代码的可维护性和性能。 这个压缩包提供的资源将帮助学习者深入理解id选择符,掌握其在实际项目中的应用,从而提升他们的网页设计能力。
理解并熟练运用这些选择符,能使CSS代码更简洁,维护性更强,同时也能提升网页性能,因为浏览器能够更有效地解析和应用样式。 例如,你可以使用子代选择符来为一个列表的直接子项设置样式,或者利用紧邻同胞选择符...
避免使用过于复杂的选择器,如后代选择器(`div .class`)和通配符选择器(`*`),优先使用ID选择器和类选择器。 4. **利用CSS预处理器**:使用Sass、Less等预处理器可以编写更模块化、可维护的代码,它们还支持...
根据MDN的分类,CSS选择符可以划分为四类,按照性能从高到低排序如下: 1. ID选择符 2. Class选择符 3. 标签选择符 4. 通用选择符 了解了性能的差异后,接下来可以通过以下12个技巧来优化CSS代码: 1. 避免过度...
**四、CSS选择符** CSS选择符是CSS用来定位和应用样式的HTML元素的标识符。基本的选择符包括元素选择符、类选择符、ID选择符等。 **1. 选择符语法** - **元素选择符**:如`p`选择所有段落元素。 - **类选择符**:...
优化CSS选择符时,关注关键选择符的选择和特异性(Specificity)是提高性能的关键。特异性高的选择符更具体,能帮助浏览器快速定位到目标元素,避免在大量元素中搜索。 例如,`.content .note span` 这样的选择符,...
CSS性能优化是一个多方面的过程,涉及到代码精简、选择器优化、动画性能、预处理器使用、缓存策略等多个方面。通过本文的介绍,你应该已经了解了如何优化CSS性能,提升页面加载速度。希望本文能够帮助你构建更快、更...
CSS动画允许开发者无须JavaScript就能实现复杂的视觉变换,减少了对JavaScript的依赖,降低了性能开销。 2. **关键帧动画**:SpinKit中的每个指示符都是基于CSS关键帧动画(@keyframes)构建的。关键帧动画定义了...
4. CSS选择符分为元素选择符、类选择符、ID选择符、伪类选择符和伪元素选择符。 5. CSS权重决定了当多个样式规则作用于同一元素时,哪个规则的优先级更高。 6. 字体属性涉及字体系列、大小、加粗、斜体等样式。 7. ...
在CSS(层叠样式表)领域...以上仅是部分经典CSS面试题及解答,实际面试中可能涉及更深入的问题,如浏览器兼容性、性能优化、CSS预处理器的高级用法等。熟悉这些概念并能灵活运用是成为一名优秀前端开发者的必备技能。
选择符是CSS的核心,用于指定要应用样式的元素。基本的选择符包括: - **元素选择符**:如`p`,选择所有`<p>`元素。 - **类选择符**:如`.myClass`,选择具有`class="myClass"`的元素。 - **ID选择符**:如`#...