news 2026/6/10 18:45:55

CSS选择器分类总结(AI版)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CSS选择器分类总结(AI版)

本文系统总结了CSS选择器的分类和使用方法。


表格形式呈现了基础选择器(元素、类、ID、通用)、组合选择器(后代、子、兄弟等)、伪类选择器(状态/位置)、伪元素选择器以及属性选择器的具体用法和优先级。


重点说明了CSS选择器的优先级计算规则(从!important到通用选择器),并提供了计算示例。


最后给出实用建议:避免过度使用ID选择器、合理使用类选择器、慎用!important、利用CSS层叠特性等,帮助开发者有效选择合适的选择器并提高代码可维护性。


CSS选择器分类总结

下面通过表格分类总结CSS选择器,帮助您系统地理解和掌握各种选择器的用法:


基础选择器

选择器示例描述优先级
元素选择器p { color: red; }选择所有指定HTML元素1
类选择器.intro { color: red; }选择所有class="intro"的元素10
ID选择器#header { color: red; }选择id="header"的元素100
通用选择器* { margin: 0; }选择所有元素0
属性选择器[target] { color: red; }选择带有target属性的所有元素10

组合选择器

选择器示例描述
后代选择器div p { color: red; }选择div元素内的所有p元素
子选择器div > p { color: red; }选择div元素的所有直接子元素p
相邻兄弟选择器h1 + p { color: red; }选择紧接在h1元素后的p元素
通用兄弟选择器h1 ~ p { color: red; }选择h1元素之后的所有同级p元素
分组选择器h1, h2, p { color: red; }选择多个元素,应用相同样式

伪类选择器(状态/位置)

选择器示例描述
链接状态a:link { color: blue; }选择所有未访问的链接
访问状态a:visited { color: purple; }选择所有已访问的链接
悬停状态a:hover { color: red; }选择鼠标悬停的元素
激活状态a:active { color: green; }选择被点击时的元素
焦点状态input:focus { border: 2px solid blue; }选择获得焦点的元素
第一个子元素p:first-child { color: blue; }选择作为其父元素第一个子元素的p元素
最后一个子元素p:last-child { color: blue; }选择作为其父元素最后一个子元素的p元素
第n个子元素p:nth-child(2) { color: blue; }选择作为其父元素第2个子元素的p元素
第n个同类元素p:nth-of-type(2) { color: blue; }选择其父元素下第2个p元素
仅有一个子元素p:only-child { color: blue; }选择作为其父元素唯一子元素的p元素
空元素p:empty { display: none; }选择没有子元素的p元素
否定伪类p:not(.intro) { color: blue; }选择class不是intro的p元素

伪元素选择器

选择器示例描述
首字母p::first-letter { font-size: 2em; }选择p元素的第一个字母
首行p::first-line { color: red; }选择p元素的第一行
之前内容p::before { content: "★ "; }在p元素前插入内容
之后内容p::after { content: " ★"; }在p元素后插入内容
选中部分::selection { background: yellow; }选择用户选中的内容

属性选择器(详细)

选择器示例描述
存在属性[target]选择带有target属性的元素
精确匹配[target="_blank"]选择target="_blank"的元素
包含单词[title~="flower"]选择title属性包含单词"flower"的元素
开头匹配[lang|="en"]选择lang属性值以"en"开头的元素
开头字符[href^="https"]选择href属性值以"https"开头的元素
结尾字符[src$=".pdf"]选择src属性值以".pdf"结尾的元素
包含字符[href*="example"]选择href属性值包含"example"的元素

CSS选择器优先级规则

优先级计算规则(从高到低):

  1. !important声明- 最高优先级

  2. 内联样式- style属性 (权重1000)

  3. ID选择器- #id (权重100)

  4. 类/属性/伪类选择器- .class, [type], :hover (权重10)

  5. 元素/伪元素选择器- p, div, ::before (权重1)

  6. 通用选择器/组合器- *, >, +, ~ (权重0)


优先级计算示例:

#nav .item a:hover { color: red; } /* 权重:100+10+1+10=121 */ .header a.active { color: blue; } /* 权重:10+1+10=21 */ div p { color: green; } /* 权重:1+1=2 */

实际应用建议

  1. 避免过度使用ID选择器- 优先级过高,不利于样式覆盖

  2. 合理使用类选择器- 复用性高,优先级适中

  3. 慎用!important- 除非必要,否则避免使用

  4. 利用CSS层叠- 合理组织选择器,减少特异性冲突

  5. 使用BEM等命名方法- 提高CSS可维护性


这个总结表涵盖了CSS选择器的主要类型和用法,可以帮助您在实际开发中快速查找和选择合适的CSS选择器。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:36:49

ResNet18图像分类5问5答:没GPU如何快速上手

ResNet18图像分类5问5答:没GPU如何快速上手 引言 作为一名刚接触深度学习的新手,你可能经常听到"ResNet18"这个名词,但面对复杂的网络结构和代码实现时又感到无从下手。特别是当你手头没有强大的GPU设备时,更会担心无…

作者头像 李华
网站建设 2026/5/30 7:17:05

从2D到深度感知:AI单目估计镜像实战解析

从2D到深度感知:AI单目估计镜像实战解析 🌐 技术背景与核心挑战 在计算机视觉领域,从二维图像中恢复三维空间结构一直是极具挑战性的任务。传统方法依赖双目立体视觉或多视角几何,但这些方案对硬件要求高、部署复杂。而人类仅凭一…

作者头像 李华
网站建设 2026/6/10 13:01:27

深度学习抠图Rembg:婚纱照精修实战案例

深度学习抠图Rembg:婚纱照精修实战案例 1. 引言:AI驱动的图像去背景革命 1.1 婚纱摄影后期的痛点与挑战 在婚纱摄影行业中,人像精修是后期制作的核心环节。传统抠图依赖设计师使用Photoshop等工具手动绘制路径或使用魔棒、快速选择工具进行…

作者头像 李华
网站建设 2026/6/10 14:22:11

单细胞转录组+X:多组学发文思路

在生命科学领域,单细胞测序的诞生让科研人员得以在单个细胞层面解析基因表达异质性,为揭示细胞异质性、神经细胞多样性、基因表达状态等复杂生物学问题提供了关键工具。然而,传统的单细胞测序难以解析基因如何表达、在何处表达等深层次的问题…

作者头像 李华
网站建设 2026/6/10 15:38:55

ResNet18多标签分类改造:云端GPU支持灵活定制,按需付费

ResNet18多标签分类改造:云端GPU支持灵活定制,按需付费 引言 当你需要让AI同时识别一张图片中的多个物体时(比如既识别猫又识别沙发),传统的单标签分类模型就力不从心了。这就是多标签分类的用武之地——它能让一个模…

作者头像 李华
网站建设 2026/6/9 21:17:01

ResNet18多模型对比:3小时快速评测指南

ResNet18多模型对比:3小时快速评测指南 引言 在计算机视觉领域,模型选型是每个技术团队都会面临的挑战。特别是对于轻量级模型的评估,传统方式往往需要租用昂贵的服务器资源,不仅成本高,而且效率低下。想象一下&…

作者头像 李华