美文网首页CSS随手记
CSS选择器总结

CSS选择器总结

作者: 小二子SAMA | 来源:发表于2019-05-08 20:43 被阅读0次
  1. CSS选择器分类:
    1)简单选择器:针对元素特征进行选择,具体包括如下几种:
        a)类型选择器,如 p {...}
        b)全体选择器,如 * {...}
        c)id选择器,如 #idName {...}
        d)class选择器,如 .className {...}
        e)属性选择器,如 [attribute = value]
        其中 ~= 和 |= 要求value必须是单个单独完整的单词,|=也支持使用"-"分隔,
        *= 、^=、$= 可以是拼接的单词,只要包含value值即可
// 选择带有target属性的所有元素
[target] {...}
// 选择 target="_blank" 的所有元素。
[target=_blank] {...}
// 选择 title 属性包含单词 "flower" 的所有元素。
[title~=flower] {...}
// 选择其 src 属性中包含 "abc" 子串的每个 <a> 元素。
a[src*="abc"] {...}
// 选择 lang 属性值以 "en" 开头的所有元素。
[lang|=en] {...}
// 选择其 src 属性值以 "https" 开头的每个 <a> 元素。
a[src^="https"] {...}
// 选择其 src 属性以 ".pdf" 结尾的所有 <a> 元素。
a[src$=".pdf"] {...}

以 ~= 和 *= 为例,效果如下:


image.png
image.png

    f)伪类选择器,根据功能的不同介绍如下三种伪类选择器:
        ● 树结构关系伪类选择器:

// 树的根元素
:root
// 没有子节点的元素,包括文本节点。
:empty
// 选择父元素的第n个子元素
:nth-child(n)
// 选择父元素的第n个子元素,从最后一个子元素开始计数
:nth-last-child(n)
// 选择父元素的唯一个子元素
:only-child
// 选择第一个或者最后一个子元素
:first-child
:last-child
// type系列同理,如:first-of-type、:nth-of-type(n)

树结构关系伪类选择器效果如下图所示:


image.png

        ● 链接与行为伪类选择器:

// 选择所有未被访问的链接。
a:link
// 选择所有已被访问的链接。
a:visited
// 选择活动链接。
a:active
// 选择鼠标指针位于其上的链接。
a:hover
// 选择获得焦点的 input 元素。
input:focus
// 选择当前活动的 #news 元素。
#news:target

        ● 逻辑伪类选择器:

// 选择非 <p> 元素的每个元素。
:not(p)
image.png

2)复合选择器:连续写在一起的简单选择器的组合,表示且的关系。

// 选中class名为className的p元素
p.className

3)复杂选择器:使用"空格"、">"、"~"、"+"、"||"符号链接的复合选择器,根据父元素或者前序元素检查单个元素;

// "空格":选中空格前的元素的后代节点中符合空格后的规则的元素
div #bbb {
  background: red;
}
image.png
//  ">" :选中子代元素,与"空格"的区别是空格既可以选择子代也可以选择子代的子代,而">"只能是子元素
div > .aaa {
  background: red;
}
image.png
image.png
// "~":选中所有符合条件的后继节点,后继节点跟当前节点具有相同的父元素
p#first ~ p{
  background: red;
}
image.png
// "+":直接后继,即当前节点的nextSibling,如果存在,只选中一个元素
image.png
// "||":列选择器,选中列中符合条件的单元格

4)选择器列表:用逗号分隔的复杂选择器列表,表示或的关系。
5)选择器优先级:
    第一优先级: 无连接符号
    第二优先级: "空格"、"~"、"+"、">"、"||"
    第三优先级:","
优先级三元组(a,b,c)
其中id选择器数据为a,伪类选择器和class选择器数目为b,伪元素选择器和标签选择器为c,"*"不影响优先级。优先级计算公式如下所示,其中base白哦是一个足够大的数字。

specificity = base * base * a + base * b + c

6)伪元素,其中:before和:after表示从无到有创建一个新的元素,他们中的content不能缺少,即使没有内容也要设置成"",这两个伪元素非常方便用来生成装饰性元素。

// 选择每个 <p> 元素的首字母。
p::first-letter
// 选择每个 <p> 元素的首行。
p::first-line
// 在每个 <p> 元素的内容之前插入内容。
p::before
// 在每个 <p> 元素的内容之后插入内容。
p::after
image.png

相关文章

  • 2022-02-02 CSS 第一天

    CSS简介 CSS语法规范 代码风格 选择器的作用 标签选择器 类选择器 id选择器 通配符选择器 基础选择器总结...

  • CSS选择器

    上篇介绍了css的引入方式,这篇总结一下css选择器。css选择器的语法格式如下: 类选择器'.'指定HTML文档...

  • jQuery选择器

    jQuery基本选择器 总结:跟css的选择器用法一模一样。 jQuery层级选择器 跟CSS的选择器一模一样。 ...

  • CSS选择器

    CSS 元素选择器CSS 选择器分组CSS 类选择器详解CSS ID 选择器详解CSS 属性选择器详解CSS 后代...

  • css伪元素

    css 伪元素 详述: 这篇文章是继 css的伪类 与 css 伪类选择器 后的 CSS伪元素总结, 意在总结连贯...

  • 前端知识海底捞之CSS

    CSS 选择器的分类 不同级别:总结排序:!important > 行内样式 > ID选择器 > 类选择器 > 标...

  • css选择器

    最近决定系统的学习css,基础打扎实,学习css权威指南的同时,做一些总结记录 元素选择器、类选择器与id选择器 ...

  • 2022-04-03

    简单总结一周学的css 2 日常总结CSS选择器列表[https://www.cnblogs.com/zhangh...

  • CSS选择器

    目录: CSS派生选择器 CSS元素选择器 CSS Id 和 Class选择器 CSS 属性选择器 CSS 派生选...

  • CSS学习总结

    学了有一小段时间前端了,今做个CSS的总结! 目录: CSS 简介 CSS 语法 CSS 选择器 CSS 引入方式...

网友评论

    本文标题:CSS选择器总结

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