【Web前端笔记07】CSS选择器

目录

[07 CSS选择器](#07 CSS选择器)

一、关系选择器

[二、 伪类选择器](#二、 伪类选择器)

三、伪对象选择器

四、属性选择器

总结


07 CSS选择器
一、关系选择器
  1. 后代选择器
    E F{}(所有被 E 元素包含的 F 元素,中间用空格隔开)
  2. 通用兄弟选择器
    E~F{}(选择 E 元素之后的所有兄弟元素 F,作用于多个元素,用~隔开)
  3. 相邻兄弟选择器
    E+F{}(选择紧跟 E 元素后的 F 元素,用加好表示,选择相邻的第一个兄弟元素)
  4. 子代选择器
    E>F{}(选择所有作为 E 元素的直接子元素 F,对更深一层的元素不起作用)
二、 伪类选择器
  1. 超链接
  • :link"链接":超链接点击之前(只适用于a)
  • :visited"访问过的":链接被访问过之后(只适用于a)
  • :hover "悬停":鼠标放到标签上的时候(适用于所有标签)
  • :active "激活": 鼠标点击标签,但是不松手时。(适用于所有标签)
  • :first-child 选择器 匹配其父元素中的第一个子元素
  • :first-of-type 选择器 匹配元素其父级是特定类型的第一个子元素
  • :only-child 选择器 匹配属于父元素中唯一子元素的元素
  • :nth-child ()选择器 匹配父元素中的第 n 个子元素,元素类型没有限制。 n 可以是一个数字,一个关键字,或者一个公式
  • :last-child 选择器 匹配父元素中最后:nth-child ()选择一个子元素
  • :last-of-type 选择器 匹配元素其父级是特定类型的最后一个子元素
  • :nth-last-child(n) 选择器 匹配属于其元素的第 N 个子元素的每个元素,不论元素的类型,从最后一个子元素开始计数,n 可以是一个数字,一个关键字,或者一个公式。
  • :empty 选择器 选择每个没有任何子级的元素(包括文本节点)
  • :not(selector) 选择器 匹配每个元素是不是指定的元素/选择器。
  • :focus 选择器 用于选择具有焦点的元素
  • :checked 选择器 匹配每个选中的输入元素(仅适用于单选按钮或复选框)
  • ::selection 选择器匹配元素中被用户选中或处于高亮状态的部分。 ::selection 只可以应用于少数的 CSS 属性:color, background, cursor,和 outline。 Firefox 通过其私有属性 ::-moz-selection 支持
三、伪对象选择器

E:before / E::before

E:after / E::after

before,after选择器在被选元素的"内容"前面或后面插入内容,用来和content属性一起使用。

注:写伪元素是要规范,用两个冒号

四、属性选择器

可以为拥有指定属性的 HTML 元素设置样式,而不仅限于 class和 id属性

值 描述
attribute 用于选取带有指定属性的元素
attribute=value 用于选取带有指定属性和值的元素
attribute\~=value 用于选取属性值中包含指定词汇的元素
attribute|=value 用于选取带有以指定值开头的属性值的元素,该值必须是整个单词
attribute\^=value 匹配属性值以指定值开头的每个元素
attribute$=value 匹配属性值以指定值结尾的每个元素
attribute\*=value 匹配属性值中包含指定值的每个元素

写法:元素【属性名="属性值"】 等号不固定可换成其他符号

总结

本篇博文主要介绍了CSS选择器的知识,常用的是关系选择器,但是在特殊情况下会用到其他的选择器,在使用超链接,设置其样式的时候,伪类选择器是最常用到的,大家可以在具体实践中进行体会,了解其中的不同之处。

相关推荐
子兮曰4 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰4 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
一隅论数智4 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
前端小万4 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝4 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋4 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
卡布鲁4 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++