css3新增选择器总结

目录

一、属性选择器

二、结构伪类选择器

三、伪元素选择器

四、UI状态伪类选择器

五、反选伪类选择器

六、target选择器

七、父亲选择器、后代选择器

八、相邻兄弟选择器、兄弟们选择器


一、属性选择器

(除IE6外的大部分浏览器支持)

E:某个标签元素如div,arr:该元素的某个属性:

|--------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 例子 |
| Earr\^='value' | 选中属性以'value'开头的E元素 | |
| Earr$='value' | 选中属性以value结尾的E元素 | |
| Earr\*='value' | 选中属性包含value的E元素 | |

补充:

1、E:root------匹配文档的根元素,对于HTML文档,就是HTML元素

2、E:empty------匹配一个不包含任何子元素的元素,注意,文本节点也被看作子元素

二、结构伪类选择器

(FireFox 1.5/2.0/3.0 支持E:root,FireFox 3.0支持E:last-child、E:empty,IE6/7/8不支持)

|----------------------------------|-------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| E:first-child | 父元素下第一个子元素 | |
| E:last-child | 父元素下最后一个子元素 | 略 |
| E:nth-child(n) | 父元素下第n个子元素 | 略 |
| E:nth-child(even) | 父元素下第偶数个子元素 | |
| E:nth-child(odd) | 父元素下第奇数个子元素 | 略 |
| E:nth-child(公式) | 父元素下第公式所指的每一个子元素 | 略 |
| E:first-of-type、last-of-type | 父元素下第一个E元素、父元素下最后一个E元素 | |
| E:nth-of-type(n)、nth-of-type(公式) | 父元素下第n个E元素、父元素下第公式所指的每一个E元素 | |
| E:nth-of-type(even) | 父元素下第偶数个E元素 | |
| E:nth-of-type(odd) | 父元素下第奇数个E元素 | 略 |
| E:nth-child和E:nth-of-type区别 | 1、E:nth-child(n)的对象是E元素下的所有子元素;而nth-of-type(n)的对象指父元素下所有E元素; 2、E:nth-child(n)不一定渲染,当第n个元素不是E时,样式无法渲染;nth-of-type(n)一定渲染 | |

三、伪元素选择器

顾名思义,假的元素,主要是说E::before可以在E元素前面加一个伪元素,E::after可以在E元素后面加一个伪元素。

|-----------------|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| E::before | 用来实现在元素内容之前插入内容 | |
| E::after | 用来实现在元素内容后面插入内容 | 略 |
| E::first-letter | 为E元素文本中的首个字母或文字添加样式 | |
| E::first-line | 用来实现向文本的首行添加样式 | 略 |

四、UI状态伪类选择器

|--------------|-------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| E:enabled | 匹配表单中激活的元素 | |
| E:disabled | 匹配表单中禁用的元素 | |
| E:checked | 匹配表单中被选中的radio(单选框)或checkbox(复选框)元素 | |
| E::selection | 匹配用户当前选中的元素(鼠标在浏览器上选中的文字内容,本来是淡蓝色,通过E::selection,赋予了新的选中样式) | |

五、反选伪类选择器

|----------|--------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| E:not(s) | 匹配E选择器中,不是s的所有E选择器 | |

六、target选择器

|----------|-------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| E:target | 匹配文档中特定"id"点击后的效果 | |

七、父亲选择器、后代选择器

|------------------|-----------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| 父亲选择器div>p{...} | E元素的子元素 | |
| 后代选择器div p{...} | E元素的子元素以及孙子元素等所有的后代元素 | |

八、相邻兄弟选择器、兄弟们选择器

|---------------|------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 选择器 | 解释 | 示例 |
| 相邻兄弟选择器:E+F | 匹配最邻近的兄弟元素 | |
| 兄弟们选择器:E ~ F | 匹配任何在E元素之后的同级F元素 | |

十、最后

欢迎评论区纠错或者补充哦。

相关推荐
徐小夕38 分钟前
开源!我用SQLite + DuckDB打造了一款可视化AI问数平台
前端·算法·github
leslie1181 小时前
babel笔记
前端
用户059540174461 小时前
Redis 记忆存储踩坑实录:一个并发写入 Bug 让我排查了 4 小时
前端·css
小徐_23332 小时前
Wot UI 2.3.0 发布:二维码组件来了,Open Wot 与 wot-starter 同步更新
前端·微信小程序·uni-app
kyriewen2 小时前
Claude自己跑出去hack了3家公司——我为什么还在用它写代码
前端·ai编程·claude
IT_陈寒2 小时前
SpringBoot自动配置的坑,这次真踩疼我了
前端·人工智能·后端
子兮曰3 小时前
AI 浏览器 Agent 的安全困局:当自动化工具可以偷走你的登录态
前端·人工智能·后端
程序员黑豆3 小时前
鸿蒙应用开发之@Styles 装饰器:定义可复用的组件样式
前端·harmonyos
程序员码歌3 小时前
我全程用 AI开发了一款微信小游戏,上线了
android·前端·游戏开发
咩咩啃树皮3 小时前
第52篇:前端工程化完整体系精讲——Vite构建、模块化、打包原理、规范体系、面试终极通关
前端·面试·职场和发展