视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
CSS选择器的优先级和权重分析
2020-11-27 20:03:07 责编:小采
文档

结构性伪类(Structural pseudo-classes)

??结构性伪类用于指定文档的特定结构。

选择器实 例描 述版 本
:root:root匹配文档的根元素3
:nth-child(n):nth-child(n)匹配其父元素的第 n 个子元素3
:nth-last-child(n):nth-last-child(n)匹配其父类倒数第 n 个子元素3
:nth-of-type(n):nth-of-type(n)匹配其父类第 n 个有着相同选择器的子元素3
:nth-last-of-type(n):nth-last-of-type(n)匹配其父类倒数第 n 个有着相同选择器的子元素3
:first-child:first-child 匹配其父类元素的第一个子元素3
:last-child:last-child 匹配其父类元素的最后一个子元素3
:last-child:last-child 匹配其父类元素的最后一个子元素3
:first-of-type:first-of-type匹配其父类元素第一个有着相同选择器的子元素3
:last-of-type:first-of-type匹配其父类元素最后一个有着相同选择器的子元素3
:only-child:only-child匹配其父类的唯一子元素3
:only-of-type:only-child匹配其父类的唯一有着相同选择器的子元素3
:empty:empty匹配没有子元素(包括文字节点)的元素3
:nth-child(n):nth-last-child(n):nth-of-type(n):nth-last-of-type(n) 中 n 是从 0 开始的整数,表达式可写成 an+b, a 和 b 是 0 或正整数,表达式的写法相当于把每 a 个子元素分成一组,取每组的第 b 个元素;取第奇数、偶数个子元素可写表达式为 2n+1 或 even2n 或 odd

??否定伪类是用来选择所有非指定类型元素的其他元素。

选择器实 例描 述版 本
:not(s)input:not([type="text"])匹配所有非指定类型的其他元素3

伪元素

??伪元素(Pseudo-elements)是指不存在与文档树中的抽象。

选择器实 例描 述版 本
::first-line::first-line匹配元素文本内容的首行1
::first-letter::first-letter匹配元素文本内容的首个字母1
::before::before元素之前2.1
::after::after元素之后2.1
在 CSS 1 和 CSS 2 中,伪类选择器中只有一个 ":",而 CSS 3 变为两个 "::",是为了区分伪类与伪元素,目前这两个写法效果一致。

::before::after 必须设置 content 属性,否则元素不能生效。

优先级和权重

?? CSS 中的权重分别为 4 个等级:

  • 内联样式(HTML 文档中的 style 属性)

  • ID 选择器

  • 类、伪类、属性选择器

  • 元素、伪类元素

  • 这 4 个等级由高到低代表不同的优先级,!important 写在 CSS 规则后,可以将对应的规则提升到最高权重。

    下载本文
    显示全文
    专题