03.CSS嵌套 (Nesting)

CSS嵌套允许你通过将选择器嵌套在一起来编写更易维护和逻辑清晰的样式规则,类似于Sass等预处理器,但这是CSS的原生功能。

本章概述

CSS嵌套是现代CSS中的一个革命性特性,它让开发者能够以更直观、更有组织的方式编写样式代码。通过嵌套,你可以创建反映HTML结构的CSS代码,提高代码的可读性和可维护性。

学习目标

  • 理解CSS嵌套的基本概念和语法

  • 掌握嵌套选择器的使用方法

  • 学会使用父选择器引用(&)

  • 了解嵌套的最佳实践和注意事项

  • 掌握嵌套与媒体查询的结合使用

CSS嵌套基础

基本语法

CSS嵌套允许你将一个选择器写在另一个选择器内部:

go 复制代码
.blog {
  position: relative;
  padding: 1rem;
  background: var(--neutral-100);

  .blog-item {
    border: 1px solid var(--neutral-200);
    margin-bottom: 1rem;
    border-radius: 8px;

    & span {
      font-size: 1rem;
      color: var(--text-secondary);
    }
  }
}

这等同于传统的CSS写法:

go 复制代码
.blog {
  position: relative;
  padding: 1rem;
  background: var(--neutral-100);
}

.blog .blog-item {
  border: 1px solid var(--neutral-200);
  margin-bottom: 1rem;
  border-radius: 8px;
}

.blog .blog-item span {
  font-size: 1rem;
  color: var(--text-secondary);
}

父选择器引用 (&)

相关推荐
颜酱几秒前
语音合成与视觉模型api接入实现
前端·javascript·人工智能
你听得到112 分钟前
Get 这波之后,我把 Flutter 状态管理重新看了一遍:新项目到底该选谁?
前端·flutter·架构
一天睡25小时21 分钟前
做产品前,先别急着写代码:我是怎么判断一个点子值不值得做的
前端
霍理迪24 分钟前
TS—函数、类、泛型
前端
cc.ChenLy1 小时前
浏览器缓存机制详解:如何彻底解决前端代码更新后的缓存问题
前端
XTTX1101 小时前
Vue3+Cesium电子围栏效果
前端·javascript·vue.js
KevinWang_1 小时前
AI 基础设施及其应用
前端
AIFarmer1 小时前
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后再试一次。
前端·npm·node.js
小红的布丁1 小时前
Redis 集群详解:主从哨兵和切片集群有什么区别
前端·数据库·redis
小高0072 小时前
🔥前端性能内卷终点?Signals 正在重塑我们的开发习惯
前端·javascript·vue.js