大家都知道CSS的全称叫做“层叠样式表”,但估计很多人都不知道“层叠”二字的含义。其实,“层叠”指的就是样式的覆盖,当一个元素被运用上多种样式,并且出现重名的样式属性时,浏览器必须从中选择一个属性值,这个过程就叫“层叠”。样式覆盖(这种叫法更大众化些)遵循一定的规则,之前我对这个规则一直似懂非懂的,直到这几天看了”CSS: The Missing Manual”,才豁然开朗。下面是我的一些学习笔记。 首先需要明确的是,很多情况都会导致一个元素被运用上多种样式,样式覆盖的规则也需要根据不同的情况来定,具体规则如下。 规则一:由于继承而发生样式冲突时,最近祖先获胜。CSS的继承机制使得元素可以从包含它的祖先元素中继承样式,考虑下面这种情况: <html> <head> <title>rule 1</title> <style> body {color:black;} p {color:blue;} </style> </head> <body> <p>welcome to <strong>gaodayue的网络日志</strong></p> </body> </html> strong分别从body和p中继承了color属性,但是由于p在继承树上离strong更近,因此strong中的文字最终继承p的蓝色。 规则二:继承的样式和直接指定的样式冲突时,直接指定的样式获胜。在上面的例子中,假如还指定了strong元素的样式,如: 1 strong {color:red;} 那么根据规则二,strong中的文字最终显示为红色。 规则三:直接指定的样式发生冲突时,样式权值高者获胜。样式的权值取决于样式的选择器,权值定义如下表。 css选择器 权值 标签选择器 1 类选择器 10 ID选择器 100 内联样式 1000 伪元素(:first-child等) 1 伪类(:link等) 10 可以看到,内联样式的权值>>ID选择器>>类选择器>>标签选择器,除此以外,后代选择器的权值为每项权值之和,比如”#nav .current a”的权值为100 + 10 + 1 = 111。 规则四:样式权值相同时,后者获胜。考虑下面这种情况 1 <pclass=”byline”>Written by <aclass=”email”href=”mailto:jean@cosmofarmer. com”>Jean Graine de Pomme</a></p> 1 2 .byline a {color:red;} p .email {color:blue;} “.byline a”与”p .email”都直接指定了上面的a元素,且权值都为11,根据规则四,最终显示蓝色。 由于样式表可以是外部的,也可以是内部的,规则四提醒我们要注意外部样式表引入的顺序(及<link>元素的顺序),以及外部样式表与内部样式表的出现位置。一般来说,内部样式表出现在所有外部样式表的引入之后,一般是在</head>之前。 规则五:!important的样式属性不被覆盖。!important可以看做是万不得已的时候,打破上述四个规则的”金手指”。如果你一定要采用某个样式属性,而不让它被覆盖的,可以在属性值后加上!important,以规则四的例子为例,”.byline a {color:red !important;}”可以强行使链接显示红色。大多数情况下都可以通过其他方式来控制样式的覆盖,不能滥用!important。
相关推荐
CSS优先级是指当多个样式规则同时作用于同一个HTML元素时,决定哪个样式规则最终被应用的规则体系。了解并掌握CSS优先级对于解决样式冲突问题至关重要。 ##### 1. 大小写不敏感性 CSS属性名和值不区分大小写。例如...
CSS 样式应用优先级是指在CSS样式规则应用时的顺序和优先级。该优先级规则决定了哪些样式规则将被应用于HTML元素。下面是CSS样式应用优先级的详细解释: 1. 重要声明(!important) 重要声明是CSS样式规则中最高的...
了解这些基本原理后,你可以更精确地控制CSS样式,避免不必要的覆盖和冲突。在开发过程中,合理使用选择器权重可以帮助优化代码结构,提高可维护性。记住,尽量避免过度依赖`!important`,因为它会降低代码的可读性...
CSS优先级总结是一个非常重要的知识点,它决定了CSS样式的应用顺序和优先级。在CSS中,优先级是指样式规则的应用顺序,高优先级的样式规则将覆盖低优先级的样式规则。 在CSS中,有多种选择器可以用来指定样式规则,...
在多个CSS规则应用于同一元素时,理解CSS优先级至关重要,因为它决定了哪个样式会生效。这个概念对于创建美观且功能完备的网页至关重要。 首先,我们来探讨CSS优先级的基本原则: 1. 继承性:当一个元素没有明确的...
CSS优先级是网页设计中一个至关重要的概念,它决定了浏览器如何解析和应用样式规则,从而影响页面元素的呈现。在深入探讨优先级之前,我们先简单回顾一下CSS的基础。CSS,全称为层叠样式表(Cascading Style Sheets...
CSS优先级是指在多个样式规则同时应用于同一元素时,决定哪一个规则会被执行的机制。这个机制基于以下几点来确定优先级: 1. **内联样式**:直接写在HTML元素上的`style`属性具有最高的优先级。 2. **ID选择器**:...
CSS 样式的优先级是指在多个样式规则同时作用于同一个元素时,浏览器如何决定采用哪一个样式规则。一般来说,CSS 样式的优先级顺序是:[1 位重要标志位] > [4 位特殊性标志] > 声明先后顺序。 使用 `!important` ...
CSS优先级计算规则是网页设计与开发中的一个基础知识点,它决定了当多个CSS规则应用于同一元素时...在实际开发中,合理利用CSS优先级规则,可以帮助开发者更有效地控制样式的应用和覆盖,从而达到预期的网页设计效果。
最权威的CSS样式优先级,本人整理过的,做过笔记。
#### CSS优先级的基本规则 在CSS中,样式表的优先级决定了元素最终采用哪一套样式。理解CSS优先级的基本规则对于开发人员来说至关重要,尤其是在处理复杂的页面布局时。 1. **ID选择器**:具有最高的优先级,形如`...
通过使用组合器(Combinator)将选择器的描述写得更加精确(参考CSS选择器 – MDN ),例如对于下述代码片段,如果想给.cellphones中的.apple增加样式,只使用.apple,势必会对.fruit中的.apple也造成影响。...
5. **CSS优先级**:理解CSS的优先级规则(内联样式 > ID选择器 > 类选择器 > 标签选择器)对于确保自定义样式生效至关重要。 在实践中,通过深入研究"CSS Reference Chart for SharePoint 2007",你可以: 1. **...
简而言之,CSS样式应用优先级的基本规则是:`!important` > 内联样式 > ID选择器 > 类选择器 > 属性选择器和伪类 > 元素选择器 > 通配符选择器。结合符的使用可以进一步增加选择器的特异性,从而提升优先级。在编写...
这个名为“CSS样式参考.rar”的压缩包包含了一个名为“CSS参考.doc”的文档,很显然,它是为初学者或有经验的开发者提供的一份CSS样式指南。 **CSS基础** 1. **选择器**:CSS中的选择器用于选取我们想要样式的HTML...
详解CSS优先级的读法,CSS优先级包含四个级别(文内选择符,ID选择符,Class选择符,元素选择符)以及各级别出现的次数。根据这四个级别出现的次数计算得到CSS的优先级。 最近看到篇对CSS优先级有比较好的解释的...
CSS优先级的基本规则如下: 1. **内联样式(Inline Styles)**:如`;">`,优先级最高。 2. **内部样式表(Internal Style Sheets)**:如`<style>`标签中的样式,优先级次之。 3. **外部样式表(External Style ...
在Web前端开发中,CSS(层叠样式表)...同时,理解并掌握CSS优先级关系也能帮助开发者在遇到样式冲突时快速定位问题,节省调试时间。因此,无论是新手还是经验丰富的开发者,都应重视对CSS优先级的深入理解和实践应用。
这个“CSS样式表中文手册教程”提供了全面的CSS知识,对于Web开发者来说是极有价值的资源。 首先,CSS的基础概念是至关重要的。它由选择器和声明组成,选择器定位要应用样式的元素,而声明则定义具体的样式规则。...
在多个CSS样式规则可能同时应用于同一HTML元素的情况下,CSS优先级决定了哪些规则将最终被浏览器所采用。 CSS优先级的规则基于几个原则,主要包括特殊性的权重计算和选择器类型的区分。特殊性是一个量度,用以表示...