【CSS 选择器组合规则详解】

基础选择器组合

  • 空格:后代选择器
    > 直接子元素选择器
    . 类选择器
    : 伪类选择器

  • 多类选择器

shell 复制代码
.class1.class2 :多类组合
.class1 .class2 :类的所有后代
.class1 > .class2 :类的子元素
  • 特殊选择器
shell 复制代码
:nth-child()
:nth-of-type()
html 复制代码
<div class="red">
    <p class="bold">第一层</p>
    <div class="box">
        <p class="bold">第二层</p>
    </div>
</div>

三种不同的选择器效果:

css 复制代码
/* 1. 同时具有两个类 */
.red.bold {
    /* 什么都选不到,因为没有同时具有这两个类的元素 */
}

/* 2. 直接子元素 */
.red > .bold {
    /* 只选中"第一层",因为它是 .red 的直接子元素 */
}

/* 3. 所有后代 */
.red .bold {
    /* 选中"第一层"和"第二层",因为它们都在 .red 下面 */
}

这种区别在构建复杂布局时特别重要,可以精确控制样式的应用范围。

万事顺遂🫰

相关推荐
颜漠笑年3 分钟前
可迭代对象≠数组,一起来揭开for...of背后隐藏的秘密吧
前端·javascript
GIS之路4 分钟前
GeoTools 数据模型
前端
拾光拾趣录5 分钟前
Vue中v-if与v-for同元素使用的陷阱
前端·vue.js
拾光拾趣录5 分钟前
浏览器存储:从Cookie到IndexedDB
前端·浏览器·indexeddb
拾光拾趣录5 分钟前
前端静态资源本地缓存:从秒开到省流量
前端·性能优化·浏览器
脑袋大大的1 小时前
判断当前是否为钉钉环境
开发语言·前端·javascript·钉钉·企业应用开发
军军君011 小时前
基于Springboot+UniApp+Ai实现模拟面试小工具二:后端项目搭建
前端·javascript·spring boot·spring·微信小程序·前端框架·集成学习
quweiie2 小时前
tp8.0\jwt接口安全验证
前端·安全·jwt·thinkphp
xiaoyan20152 小时前
最新Flutter3.32+Dart3仿微信App聊天实例
前端·flutter·dart
汪敏wangmin2 小时前
Fiddler-抓包后直接生成Loadrunner脚本或者Jmeter脚本
前端·jmeter·fiddler