css3新增的伪类有哪些

CSS3 引入了许多新的伪类选择器,这些选择器为开发者提供了更多的样式控制选项。以下是一些 CSS3 中新增的主要伪类选择器:

  1. 结构性伪类
    • :root:选择文档的根元素(通常是 <html>)。
    • :empty:选择没有子节点的元素(包括文本节点)。
    • :first-of-type:选择其父元素中的第一个 <element-name> 类型的元素。
    • :last-of-type:选择其父元素中的最后一个 <element-name> 类型的元素。
    • :only-of-type:选择其父元素中唯一的 <element-name> 类型的元素。
    • :nth-of-type(n):选择其父元素中的第 n<element-name> 类型的元素。
    • :nth-last-of-type(n):选择其父元素中的倒数第 n<element-name> 类型的元素。
  2. UI伪类
    • :enabled:选择可用的表单元素。
    • :disabled:选择被禁用的表单元素。
    • :checked:选择被选中的 <input> 元素(例如,单选框或复选框)。
    • :default:选择默认被选中的 <input><button> 元素。
    • :valid:选择输入值有效的表单元素。
    • :invalid:选择输入值无效的表单元素。
    • :in-range:选择输入值在指定范围内的 <input> 元素。
    • :out-of-range:选择输入值不在指定范围内的 <input> 元素。
    • :required:选择设置了 required 属性的表单元素。
    • :optional:选择没有设置 required 属性的表单元素。
    • :readonly:选择设置了 readonly 属性的表单元素。
    • :writeable:选择没有设置 readonly 属性的表单元素。
  3. 其他伪类
    • :backdrop:用于全屏的背景界面(通常与全屏API一起使用)。
    • :fullscreen:选择全屏显示的元素。
    • :placeholder-shown:选择当前显示占位符文本的 <input><textarea> 元素。
    • :dir():基于元素的文本方向(例如 :dir(ltr):dir(rtl))来选择元素。
    • :lang():基于元素的语言属性来选择元素。
    • :not():选择不匹配特定选择器的元素。
    • :any-link:选择所有链接(<a><area><link> 元素)。
    • :current(伪元素):用于选择当前元素(如 ::current:range 输入类型中)。注意这不是一个标准的 CSS 伪类,但在某些上下文中可能会遇到。

请注意,某些伪类(如 :fullscreen:backdrop)可能并不是所有浏览器都支持,或者可能需要特定的API(如全屏API)才能触发。同时,:any-link:current 并不是真正的 CSS3 伪类,但它们在这里被提及是为了完整性。

相关推荐
why技术2 分钟前
分享一套我一直在使用的 AICoding 组合拳,小而美的典范。
前端·后端·ai编程
架构源启11 分钟前
文档接入与智能解析:基于 Spring AI 1.1.x 的多格式解析、版面理解与结构化抽取
java·人工智能·spring
朦胧之38 分钟前
AI应用-消费流式输出
前端·javascript·ai编程
小林ixn39 分钟前
在浏览器跑通 15 亿参数大模型:我用 React + WebGPU 复刻了 DeepSeek-R1
前端·react.js·前端框架
Csvn1 小时前
容器查询 @container 实战:告别无休止的媒体查询
前端
稚南城才子,乌衣巷风流3 小时前
函数:编程中的核心概念
开发语言·前端·javascript
大模型码小白4 小时前
JAVA 集合框架进阶:List 与 Set 的深度解析与实战
java·开发语言·人工智能·windows·语言模型·list·ai编程
IT_陈寒4 小时前
为什么我的JavaScript异步代码总是不按顺序执行?
前端·人工智能·后端
索西引擎4 小时前
【React】useState 状态更新机制:批量更新策略与“异步“错觉的深层解析
前端·react.js·前端框架
名字还没想好☜5 小时前
Go 的 time.Ticker 陷阱:定时任务里被忽略的内存泄漏与正确关闭
java·数据库·golang·go·定时器