美文网首页
CSS选择器优先性以及权重计算

CSS选择器优先性以及权重计算

作者: zx_lau | 来源:发表于2018-07-19 13:33 被阅读0次

样式根据引入和声明需要分开介绍,一般来说分为引入样式优先级声明样式优先级

一、引入样式优先级

引入样式优先级一般是在外部样式、内部样式、内联样式之间应用同一个样式的情况是使用, 优先级如下:

外部样式 | 内部样式 < 内联样式

外部样式和内部样式,最后出现的优先级最高。

二、样式声明优先级

a.选择器类型

    ①、ID  #id

    ②、class  .class

    ③、标签  p

    ④、通用  *

    ⑤、属性  [type="text"]

    ⑥、伪类  :hover

    ⑦、伪元素  ::first-line

    ⑧、子选择器、相邻选择器

b、选择器所占权重

    ①:代表内联样式,如: style=””,权值为1000。

    ②:代表ID选择器,如:#content,权值为100。

    ③:代表类,伪类和属性选择器,如.content,权值为10。

    ④:代表类型选择器和伪元素选择器,如div p,权值为1。    

    ⑤:通配符、子选择器、相邻选择器等的。如*、>、+,权值为0。

    ⑥:继承的样式没有权值。

权值计算示例

c、!important

    !important是选择器优先级比较特殊的存在。

    !important 的作用是提升优先级,换句话说。加了这句的样式的优先级是最高的(比内联样式的优先级还高)。

    加了!important的样式如果要覆盖的话,只能在后面继续加important,所以一般不建议使用。

    table td {height:50px!important;}

    .myTable td{height:50px!important;}

    #myTable td{height:50px!important;}   //生效

d、就近原则

    当权值相同的情况下怎么办呢,这个时候就要看就近原则了。

    css有4种引入方式,除了行内式以外,后设置的值会覆盖前面设置的, 因为剩余三种引入方式都是在头部引入,后设置也就离目标属性更近,   也就是就近原则了。

e、基于形式的优先级

    优先级是基于选择器的形式进行计算的。在下面的例子中,尽管选择器*[id="foo"] 选择了一个ID,但是它还是作为一个属性选择器来计算自身的优先级。

    *#foo{color:green;}     //生效

    *[id="foo"] {color:purple;}

f、无视DOM树的距离

    body h1 {color:green;}

    html h1 {color:purple;}   //生效

相关文章

  • CSS样式(选择器)的优先级

    css样式(选择器)的优先级 计算权重分类 important 内联样式 后写的优先级高

  • CSS选择器优先性以及权重计算

    样式根据引入和声明需要分开介绍,一般来说分为引入样式优先级和声明样式优先级。 一、引入样式优先级 引入样式优先级一...

  • css3

    CSS三大特性 1成叠行 2继承性 3优先级性 行内样式>id选择器权重>类选择器>标签选择器 /*1. 权重相同...

  • CSS样式选择器权重 计算

    CSS样式选择器权重 计算

  • HTML CSS 选择器权重计算规则

    原文地址: CSS 选择器权重计算规则 其实,CSS有自己的优先级计算公式,而不仅仅是行间>内部>外部样式;ID>...

  • css问题整理(持续更新中...)

    1. css权重、优先级 权重 内联样式id选择器class、属性选择器(eg:[title]{ color:bl...

  • 面试NO.1——CSS

    一、CSS优先级算法如何计算?选择器优先级ID>class>元素选择器ID选择器的特殊性值,加0,1,0,0。类选...

  • web前端面试题

    1.css有哪些选择符,它们的优先关系计算 CSS 元素选择器CSS 类选择器CSS ID 选择器CSS 属性选择...

  • web前端的面试题

    1.css有哪些选择符,它们的优先关系计算 CSS 元素选择器CSS 类选择器CSS ID 选择器CSS 属性选择...

  • CSS选择器优先级及!important属性

    CSS的选择器是有权重的,当不同选择器的样式设置有冲突时,会采用权重高的选择器设置样式。权重(即优先级)的规则如下...

网友评论

      本文标题:CSS选择器优先性以及权重计算

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