CSS新手入门笔记整理:CSS3选择器

属性选择器

属性选择器,指的是通过"元素的属性"来选择元素的一种方式。

语法

复制代码
元素[attr^="xxx"]{}
元素[attr$="xxx"]{}
元素[attr*="xxx"]{}

|-------------------|--------------------------------|
| 选择器 | 说明 |
| Eattr\^="xxx" | 选择元素E,其中E元素的attr属性是以xxX开头的任何字符 |
| Eattr$="xxx" | 选择元素E,其中E元素的attr属性是以xxX结尾的任何字符 |
| Eattr\*="xxx" | 选择元素E,其中E元素的attr属性是包含xXX的任何字符 |


子元素伪类选择器

子元素伪类选择器,指的就是选择某一个元素下的子元素。

第一类

|----------------|----------------------------------------------------------|
| 选择器 | 说明 |
| E:first-child | 选择父元素下的第一个子元素(该子元素类型为E,以下类同) |
| E:last-child | 选择父元素下的最后一个子元素 |
| E:nth-child(n) | 选择父元素下的第n个子元素或奇偶元素,n取值有3种:数字、odd(奇数列)和even(偶数列),其中n从1开始。 |
| E:only-child | 选择父元素下唯一的子元素,该父元素只有一个子元素 |

语法

复制代码
父元素 E:first-child{}
父元素 E:last-child{}
父元素 E:nth-child(n){}
父元素 E:only-child{}

第二类

|------------------|----------------------------------------------------------|
| 选择器 | 说明 |
| E:first-of-type | 选择父元素下的第一个E类型的子元素 |
| E:last-of-type | 选择父元素下的最后一个E类型的子元素 |
| E:nth-of-type(n) | 选择父元素下的第n个E类型的子元素或奇偶元素,n取值有3种数字、odd(奇数列)和even(偶数列),n从1开始 |
| E:only-of-type | 选择父元素下唯一的E类型的子元素,该父元素可以有多个子元素 |

语法

复制代码
父元素 E:first-of-type{}
父元素 E:last-of-type{}
父元素 E:nth-of-type(n){}
父元素 only-of-type{}

区别

:first-child在选择父元素下的子元素时,不仅要区分元素类型,还要求是第一个子元素。而:first-of-type在选择父元素下的子元素时,只需要区分元素类型,不要求是第一个子元素。


UI伪类选择器

  • UI伪类选择器,指的是针对"元素的状态"来选择元素的一种伪类选择器。UI,全称"User Interface",用户界面。
  • 元素的状态包括:可用、不可用、选中、未选中、获取焦点、失去焦点等。
  • UI伪类选择器特点是:对于指定的样式,在默认状态下不起作用,只有当元素处于某种状态时才起作用。
  • 大多数UI伪类选择器都是针对表单元素的。

|-------------|-----------------|
| 选择器 | 说明 |
| :focus | 定义元素获取焦点时使用的样式。 |
| ::selection | 定义页面中被选中文本的样式。 |
| :checked | 定义页面中被选中文本的样式。 |
| :enabled | 定义表单元素"可用"时的样式 |
| :disabled | 定义表单元素"禁用"时的样式 |
| :read-write | 定义表单元素"可读写"时的样式 |
| :read-only | 定义表单元素"只读"时的样式 |

语法

复制代码
表单元素 :focus{}
表单元素 ::selection{}
表单元素 :checked{}
表单元素 :enabled{}
表单元素 :disabled{}
表单元素 :read-write{}
表单元素 :read-only{}

其他伪类选择器

|---------|--------------------------------------------------|
| 选择器 | 说明 |
| :root | 选择HTML页面的根元素<html></html>。 |
| :empty | 选择一个"不包含任何子元素和内容"的元素即空元素。 |
| :target | 选取页面中的某一个target元素。target元素指的是id被当成页面的锚点链接来使用的元素。 |
| :not() | 选取某一个元素之外的所有元素。 |

语法

复制代码
:root{}
:empty{}
:target{}
:not(){}

相关推荐
先吃饱再说11 分钟前
层层传递太“痛”了:useContext 给 React 组件装了个“无线遥控器”
前端·react.js·前端框架
颜进强14 分钟前
前端看后端 15:什么是 DNS?
前端·后端·ai编程
文艺理科生18 分钟前
LangChain.js-v1-记忆管理最佳实践
前端·javascript·后端
子兮曰26 分钟前
Elysia vs Hono 完整性能对比:Bun 专属优化还是跨平台通用,2026 实测数据给出的答案
前端·后端·typescript
To_OC1 小时前
从一个颜色选择器说起:我终于整明白了 React+TS 里的 model 与 api 分层
前端·react.js·typescript
赵大仁1 小时前
浏览器端 RAG:Transformers.js + WebGPU 本地检索入门
前端·ai·react·webgpu·rag
木叶丸1 小时前
从 Loop 到 Graph:AI 智能体协作系统工程指南
前端·后端·架构
吴懿不在 不负信仰3 小时前
从jQuery谈库与框架的设计之优劣
前端·javascript·jquery
灵析表格3 小时前
灵析表格手机号处理函数深度分析报告
前端·网络·json·wps·灵析表格·excel公式盒子
智海深蓝3 小时前
智慧渔业海上养殖数字孪生实践方向与难点拆解分析
java·前端·网络