`
sunguanxing
  • 浏览: 1097484 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

css选择器优先级

阅读更多
css优先级即CSS样式在浏览器中被解析出来的先后顺序。
css优先级包含四个级别(行内样式,ID选择符,class类选择符,元素选择符)以及各级别出现的次数。继承是css的一个主要特征,然后继承的权重很低,比普通元素还要低。
1.行内样式(类似<p style="color:red">css</p>的样式)的优先级为1,0,0,0,始终高于外部定义(指由<link>或<style>卷标定义的规则)。
2.有!important声明的规则高于一切。
3.如果优先权一样,则按照在源码中出现的顺序决定,后者居上。
测试test_css.html
<html id="html" class="html">
<head>
<style>
div {
margin-top:5px;
}
/*第一组*/
#test1{background-color:#00FF00;}
.test1{background-color:#FF0000;}

/*第二组*/
.body #test2{background-color:#FF0000;}
#test2{background-color:#00FF00;}

/*第三组*/
div .test3{background-color:#00FF00;}
#test3{background-color:#FF0000;}

/*第四组*/
.body #test4{background-color:#00FF00;}
body #test4{background-color:#FF0000;}

/*第五组*/
html #test5{background-color:#00FF00;}
body #test5{background-color:#FF0000;}

/*第六组*/
#body #test6{background-color:#FF0000;}
.html #test6{background-color:#00FF00;}

/*第七组*/
html #body #test7{background-color:#FF0000;}
.html .body #test7{background-color:#00FF00;}

/*第八组*/
#html.html .body #test8{background-color:#FF0000;}
.html #body.body #test8{background-color:#00FF00;}
</style>
</head>
<body id="body" class="body">
<div id="div">
    <div id="test1" class="test test1">1第一行<br>第二行<br>自身</div>
    <div id="test2" class="test test2">2第一行<br>第二行<br>自身</div>
    <div id="test3" class="test test3">3第一行<br>第二行<br>自身</div>
    <div id="test4" class="test test4">4第一行<br>第二行<br>自身</div>
    <div id="test5" class="test test5">5第一行<br>第二行<br>自身</div>
    <div id="test6" class="test test6">6第一行<br>第二行<br>自身</div>
    <div id="test7" class="test test7">7第一行<br>第二行<br>自身</div>
    <div id="test8" class="test test8">8第一行<br>第二行<br>自身</div>
</div>
</body>
</html>
第一组,仅一个选择器单词的时候#id高于.class.
第二组,.body#test2比#test2多了一个单词,多一个单词就选择得更精确,优先给就要高一些。
第三组,同样多了一个单词,但其中一个是#id选择器,则#test3的优先级要高于div .test3.
第四组,同样多层级时,.class高于tag,所以.body #test4高于body #rest4.
第五组,具有同样的优先级,在源码中先写的会被覆盖,优先级与层级跨越的深度无关。
第六组,不用说了,#id高于.class,也与层级深度无关,因此#body #test6高于.html #test6。
第七组,从优先级包含的内容可知优先级与和级别出现的次数有关,前者出现次数大于后者,因此html #body #test7高于.html .body #test7(我是这样理解的)。
第八组,同五,同样的优先级,后者居上。
分享到:
评论

相关推荐

    关于CSS选择器优先级的判断题附结果截图

    理解CSS选择器优先级是编写高效、可维护CSS代码的关键。以下是关于CSS选择器优先级的一些详细说明: 首先,CSS选择器的优先级由四个部分组成,每个部分对应一个权重值: 1. ID选择器(#id):每个ID选择器的权重为...

    CSS标签选择器优先级.pdf

    CSS选择器优先级详解 CSS选择器优先级是CSS样式表中一个非常重要的概念,它决定了CSS样式的应用顺序和优先级。本文将详细介绍CSS选择器优先级的四大原则,以及它们之间的关系和应用。 原则一:继承不如指定 如果...

    CSS中选择器优先级顺序实战讲解.pdf

    本文将详细解析CSS选择器优先级的实战应用,帮助开发者理解并解决样式覆盖的问题。 首先,我们要了解CSS选择器的四种基本类型,它们的优先级顺序如下: 1. **行内样式 (inline styles)**:这是最高优先级,通过`...

    深入理解CSS选择器优先级

    本文将深入探讨CSS选择器优先级,通过八个实例来帮助你更好地理解这个概念。 首先,我们要明确一点,类的覆盖顺序并不取决于它们在HTML中的引用顺序,而是取决于它们在CSS文件中定义的顺序。例如,如果有两个类选择...

    css选择器优先级深入理解

    掌握CSS选择器优先级对于精确控制网页样式和解决样式冲突至关重要。在编写CSS时,应尽量避免使用!important,因为它降低了代码的可读性和可维护性。合理运用选择器和优先级,可以使CSS代码更加简洁高效。

    ylsislove#make-a-little-progress-every-day#前端-CSS选择器优先级1

    声明在样式表或文档中越靠后出现,权重越大。如果样式表中有通过 @import 导入的样式表,一般认为出现在导入样式表中的声明在前,主样式表的所有声明在后。

    解决CSS样式冲突的几个办法(小结)

    通过使用组合器(Combinator)将选择器的描述写得更加精确(参考CSS选择器 – MDN ),例如对于下述代码片段,如果想给.cellphones中的.apple增加样式,只使用.apple,势必会对.fruit中的.apple也造成影响。...

    CSS选择器权重计算及优先级

    以下是关于CSS选择器权重计算及优先级的详细解释: 首先,我们要了解CSS选择器的四个等级及其对应权重: 1. **内联样式**(权重1000):这是最高级别的权重,当直接在HTML元素中使用`style`属性定义样式时,例如`;...

    css样式应用优先级实用PPT课件.pptx

    id选择器的优先级高于类选择器和元素选择器。 4. 类(属性、伪类)选择器 类选择器用于选择具有特定class的元素。例如:.header{ display:none;} &lt;div class="header"&gt;&lt;/div&gt;。 属性选择器用于选择具有特定属性的...

    CSS3选择器总结CSS3选择器总结

    CSS选择器优先级 CSS选择器的优先级决定了当多个规则冲突时,哪些规则会胜出。优先级的高低通常由选择器的特异性决定,特异性越高,优先级越高。特异性由选择器的类型和数量决定,以下是优先级从低到高的顺序: 1....

    css优先级总结

    选择器优先级是指不同类型的CSS选择器在样式冲突时所具有的优先顺序。按照优先级从高到低排序如下: - 内联样式(style属性):权值为1000 - ID选择器:权值为100 - 类选择器(class)、属性选择器、伪类:权值为10...

    详解CSS中的选择器优先级顺序

    了解并熟练运用CSS选择器优先级顺序,可以帮助开发者更精确地控制元素的样式,避免不必要的样式冲突,从而提高代码的可读性和维护性。在实际开发中,尽量减少对 `!important` 的依赖,因为它会使代码难以管理和调试...

    CSS选择器.pdf

    在CSS选择器的体系中,存在多种不同类型的选择器,每种都有其特定的用途和使用场景。 首先,元素选择符是最基本的类型,包括通配符选择器、标签选择器、id选择器和class选择器。通配符选择器用“*”表示,可以选中...

    css样式优先级比较实例

    CSS选择器的权重分为四类:内联样式、ID选择器、类选择器/属性选择器/伪类、以及元素选择器/伪元素。它们对应的权重分别是: 1. 内联样式(如`style="..."`):1000 2. ID选择器(如`#example`):100 3. 类选择器/...

    react-React组件的css选择器

    6. **选择器优先级** 在React组件中,理解CSS选择器的优先级至关重要。内联样式(style属性)的优先级最高,接着是ID选择器,然后是类选择器、属性选择器和元素选择器。合理利用优先级可以更好地控制组件的样式覆盖...

    css复习加学习加升值.pdf

    CSS 选择器优先级是指不同的选择器组合的优先级顺序。常用的优先级顺序有: * `!important`:最高优先级 * `inline style`:内联样式优先级 * `ID 选择器`:ID 选择器优先级 * `类选择器`:类选择器优先级 * `元素...

    彻底弄懂CSS选择器以及优先级

    CSS选择器优先级得关系为: !important&gt;内联&gt;ID选择器&gt;类选择器&gt;标签选择器。 一种优先级算法 内联样式表的权值最高 (style=””) 权值为1000 统计选择符中的ID属性个数。(#id) 权值为100 统计选择符中的CLASS属性...

    html+css+js前端知识点

    * CSS 选择器优先级是指 CSS 选择器的优先级顺序,高优先级的选择器将覆盖低优先级的选择器 * CSS 选择器优先级的计算方式是:内联样式 &gt; ID 选择器 &gt; 类选择器 &gt; 标签选择器 * CSS 选择器优先级可以通过使用 !...

Global site tag (gtag.js) - Google Analytics