css优先级


多重样式(Multiple Styles):如果外部样式、内部样式和内联样式同时应用于同一个元素,就是使多重样式的情况。

一般情况下,优先级如下:

(外部样式)External style sheet <(内部样式)Internal style sheet <(内联样式)Inline style,例如:

1
2
3
4
5
6
7
8
9
10
11
12
< head >    
     < style  type = "text/css" >    
       /* 内部样式 */    
       h3{color:green;}    
     style >    
         
     < link  rel = "stylesheet"  type = "text/css"  href = "style.css" />    
         
head >    
< body >    
     < h3 >测试! h3 >    
body >

在选择器的情况下:

如图:

css优先级_第1张图片

解释:

1.  内联样式表的权值最高 1000;

2.  ID 选择器的权值为 100

3.  Class 类选择器的权值为 10

4.  HTML 标签选择器的权值为 1

利用选择器的权值进行计算比较,示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
< html >    
   < head >    
     < style  type = "text/css" >    
         #redP p {    
              /* 权值 = 100+1=101 */    
              color:#F00;  /* 红色 */    
         }    
         #redP .red em {    
              /* 权值 = 100+10+1=111 */    
              color:#00F; /* 蓝色 */    
         }    
         #redP p span em {    
              /* 权值 = 100+1+1+1=103 */    
              color:#FF0;/*黄色*/    
         }    
     style >    
   head >    
   < body >    
      < div  id = "redP" >    
         < p  class = "red" >red    
            < span >< em >em red em > span >    
         p >    
         < p >red p >    
      div >    
   body >    
html >

结果: 标签内的数据显示为蓝色。

CSS 优先级法则:

A  选择器都有一个权值,权值越大越优先;

B  当权值相等时,后出现的样式表设置要优于先出现的样式表设置;

C  创作者的规则高于浏览者:即网页编写者设置的CSS 样式的优先权高于浏览器所设置的样式;

D  继承的CSS 样式不如后来指定的CSS 样式;

E  在同一组属性设置中标有“!important”规则的优先级最大;示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
< html >    
   < head >    
     < style  type = "text/css" >    
      #redP p{    
         /*两个color属性在同一组*/    
         color:#00f !important; /* 优先级最大 */    
         color:#f00;    
      }    
     style >    
   head >    
   < body >    
      < div  id = "redP" >    
        < p >color p >    
        < p >color p >    
      div >    
   body >
html >

你可能感兴趣的:(css优先级)