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 伪类,但它们在这里被提及是为了完整性。

相关推荐
道友可好12 小时前
OpenSpec:轻到起飞的 AI 编程规范层
前端·人工智能·后端
kyriewen12 小时前
我招了一个“Prompt工程师”来写前端,结果项目差点崩了
前端·javascript·面试
jingling55512 小时前
Flutter | 商城项目完整实战
前端·flutter·前端框架
IT_陈寒12 小时前
React状态管理这个坑,我爬了整整三天才出来
前端·人工智能·后端
Love_云宝儿12 小时前
GeoJSON简介
java·gis·地图·jts
小新11012 小时前
从零开始 Vue.js
前端·javascript·vue.js
摇滚侠12 小时前
JDBC 基础到高级一套通关!进阶篇 16-27
java
naildingding12 小时前
Vue基础核心
前端·vue.js
弱鸡前端13 小时前
纯前端实现pdf从生成到下载
前端
明月_清风13 小时前
TanStack + Cloudflare 边缘实战:从 0 到 1 构建全栈应用
前端·全栈