news 2026/4/15 15:22:53

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/4/15 12:03:53

Rembg抠图在社交媒体营销图片中的应用

Rembg抠图在社交媒体营销图片中的应用 1. 引言:智能万能抠图 - Rembg 在社交媒体营销日益激烈的今天,高质量的视觉内容已成为品牌吸引用户、提升转化的核心竞争力。无论是产品推广、活动海报还是KOL合作内容,一张背景干净、主体突出的图片往…

作者头像 李华
网站建设 2026/3/29 5:55:09

ResNet18图像分类傻瓜教程:没显卡也能跑,2元体验

ResNet18图像分类傻瓜教程:没显卡也能跑,2元体验 引言 作为一名设计专业的学生,你是否遇到过这样的困扰:电脑里存了几百张艺术作品的图片,想要按照风格、流派或主题进行分类整理,却苦于手动操作太费时间&…

作者头像 李华
网站建设 2026/3/26 17:08:07

ResNet18+CIFAR10完整项目:云端跑通经典组合不求人

ResNet18CIFAR10完整项目:云端跑通经典组合不求人 引言 如果你是刚入门深度学习的自学者,一定听说过CIFAR10这个经典数据集和ResNet18这个经典模型。这对组合就像"西红柿炒鸡蛋"一样,是每个AI学习者必做的入门菜。但问题来了&…

作者头像 李华
网站建设 2026/4/3 3:14:46

ResNet18傻瓜式教程:没技术背景也能玩转AI分类

ResNet18傻瓜式教程:没技术背景也能玩转AI分类 引言:不懂代码也能玩转AI分类 作为市场专员,每天都要处理大量产品图片——服装款式分类、电子产品归类、食品种类区分...手动整理不仅耗时耗力,还容易出错。现在告诉你个好消息&am…

作者头像 李华
网站建设 2026/4/5 12:20:35

无需Token!用AI 单目深度估计 - MiDaS镜像实现高精度3D感知

无需Token!用AI 单目深度估计 - MiDaS镜像实现高精度3D感知 🌐 技术背景:从2D图像到3D空间的跨越 在计算机视觉领域,如何让机器“看懂”三维世界一直是核心挑战。传统方法依赖双目摄像头、激光雷达(LiDAR&#xff09…

作者头像 李华
网站建设 2026/4/3 13:14:00

ResNet18物体识别最佳实践:云端GPU按秒计费

ResNet18物体识别最佳实践:云端GPU按秒计费 引言 作为AI团队负责人,你是否经常遇到这样的困扰:多个项目需要评估ResNet18模型性能,但本地硬件资源有限,购买服务器又担心闲置浪费?今天我要分享的正是解决这…

作者头像 李华