CSS Modules

2023-10-27

CSS Modules:CSS模块,对CSS进行模块化处理

目的:解决在 React 开发时,组件之间类名重复导致的样式冲突问题

使用后:会自动生成类名

类名格式:[filename]_[classname]__[hash]

  • filename:文件名
  • classname:CSS文件中的类名
  • hash:随机生成的hash值

使用:

  1. 创建样式文件 以 .module.scss 结尾
  2. 样式文件以 CSS 方式写,类名推荐使用驼峰命名法
  3. 导入样式文件 import style from './index.module.scss'
  4. 结构中使用,通过 className={ styles.类名 }

全局样式: 通过 :global() 来包裹,就会变成全局类名

:global(.title) {
  color: red;
}

配合 SASS 使用

每个组件的根节点使用 CSSModules 形式的类名,其他所有子节点都使用普通的CSS类名

.root {
  // 根节点自己的样式
  
  :global {
    // 所有子节点的样式,都放在此处,因为是在 global 中,所以,此处的类名不会被 CSSModules 处理
    .header {}
    .main {}
  }
}
import styles from './index.module.scss'

const Layout = () => {
  return (
  	<div className={styles.root}>
      <Header className="header">
        <div className="main" />
      </Header>
    </div>
  )
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSS Modules 的相关文章

随机推荐

  • 右击 未出现 vscode打开

    右击 未出现 vscode打开 https blog csdn net Leo zjk article details 120883156 改动三处才有效 一是command要小写 然后Icon是 字符串值 三是最后不是 1 是 v don
  • (JS逆向专栏三)某玩游戏平台网站登入MD5加密

    声明 本文章中所有内容仅供学习交流 严禁用于商业用途和非法用途 否则由此产生的一切后果均与作者无关 若有侵权 请联系我立即删除 名称 365玩游戏平台 目标 登入参数 加密类型 MD5 目标网址 http minilogin sgty co
  • js小数计算丢失精度问题

    问题描述 js在计算小数计算如 1 0 2 的时候会丢失精度 即 1 0 2 0 19999999999999996 例如 console log 1 0 8 输出 0 19999999999999996 console log 6 0 7
  • QT的信号与槽函数

    一 什么是信号和槽函数 QT中通过信号 signal 和槽函数 slot 将事件和响应函数连接起来 可以类比MFC中的操作和对应的On开头的响应函数 它的优点在于信号和槽函数是松耦合的关系 你可以通过connect将两者连接起来 也可以通过
  • 【满分】【华为OD机试真题2023 JAVA&JS】任务总执行时长

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 任务总执行时长 知识点数组循环递归 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 任务编排服务负责对任务进行组合调度 参与编排的任务有两种类型 其中一种执行时长
  • 深入理解Java虚拟机jvm-对象的访问定位

    对象的访问定位 句柄 直接指针 优劣 句柄 直接指针 创建对象自然是为了后续使用该对象 我们的Java程序会通过栈上的reference数据来操作堆上的具 体对象 由于reference类型在 Java虚拟机规范 里面只规定了它是一个指向对
  • 云原生Kubernetes:K8S集群使用带凭证的harbor仓库

    目录 一 理论 1 部署harbor 创建私有项目 使用凭证登录 二 实验 1 部署harbor 创建私有项目 使用凭证登录 三 问题 1 harbor页面无法打开 2 生成harbor 登录凭据资源清单报错 3 tomcat deploy
  • 20220129刷题--第4题-- cookie

    20220129刷题 攻防世界 web新手第4题 cookie 直接burp抓包 看到 太明显了 查看cookie php呗 还得看包 看到response中 flag cyberpeace 10c8fa3cccaab62eaf04ff97
  • 刷脸支付服务商注定掀起一场商业革命

    随着5G时代的到来 互联网 AI智能 云计算 物联网等技术得到了高速发展 集这些技术于一身的刷脸支付注定掀起一场商业革命 对于创业者来说 刷脸支付代理是一个新的选择 在狂热的市场下 各大刷脸支付服务商层出不穷 为了招募代理奇招频出 何选择家
  • Stream流

    Stream流 文章目录 文章目录 Stream流 1 集合处理数据的弊端 2 Steam流式思想概述 3 Stream流的获取方式 3 1 根据Collection获取 3 2 通过Stream的of方法 4 Stream常用方法介绍 4
  • hashmap底层以及红黑树 终于懂了!!!

    目录 0 引言 1 红黑树 0 引言 jdk 1 7里面 HashMap中的数据结构是数组 单链表的组合 以键值对 key value 的形式存储元素的 通过put 和get 方法储存和获取对象 在JDK1 6 JDK1 7中 HashMa
  • openwrt--uci指令的使用

    UCI简介 UCI是集中式配置信息管理接口 Unified Configuration Interface 的缩写 他是OpenWrt引进的一套配置参数管理系统 UCI管理了OpenWrt下最主要的系统配置参数并且提供了简单 容易 标准化的
  • JAVA零基础学习课程个人笔记(全手打)

    目录 chapter01 Chapter02 目录 Chapter02 Day05 07 方法 Method 课堂笔记 chapter02 控制循环中断继续语句 chapter03 0 面向对象 chapter03 1 封装 chapter
  • 再见前端!纯Java撸个管理系统,这框架用起来贼爽!

    摘要 一个管理系统 往往需要后端 前端一起实现 单表CRUD操作往往都差不多 我们可以使用代码生成器来实现 有时候我们的管理系统只需要一些简单的CRUD页面 有没有什么框架能做到不写前端代码 纯Java撸个管理系统呢 这里推荐一个全栈类框架
  • golang通过代理访问url

    直接上实例 命令测试 curl proxy 10 0 55 22 8080 v http www baidu com package main import fmt io ioutil net http net url net time f
  • Parcel是如何存储数据

    Parcel学习 Parcel是如何存储数据的 第一步 第二步 第三步 如何读取呢 Parcel和serializable Parcel是如何存储数据的 疑问 平时java使用它进行序列化要关注的点就是读写顺序 为什么要注意读写顺序呢 在这
  • python基础十一:异常处理以及文件操作

    1 异常 1 1异常简介 程序在运行过程中可能会出现一些错误 比如 使用了不存在的索引 两个不同类型的数据相加 这些错误我们称之为异常 处理异常 程序运行时出现异常 目的并不是让我们的程序直接终止 Python是希望在出现异常时 我们可以编
  • 前端js计算导致的精度问题解决方案

    前言 js计算会导致很多奇奇怪怪的问题 这是由于js使用二进制 有一些浮点数用二进制表示时是无穷的 而为节省存储空间只存储64位 精度丢失从而导致计算出现问题 一 写个方法 自己写一个方法来解决 二 使用插件 使用 number preci
  • (二)ChatGLM-6B模型部署以及ptuning微调详细教程

    文章目录 介绍什么是ChatGLM 6B Torch 安装ChatGLM 6B模型 安装过程 Ptuning微调 安装过程 初始化环境 训练 准备自己的数据集 推理 验证 问题和思考 泛化学习 simbert 不属于必学 介绍什么是Chat
  • CSS Modules

    CSS Modules CSS模块 对CSS进行模块化处理 目的 解决在 React 开发时 组件之间类名重复导致的样式冲突问题 使用后 会自动生成类名 类名格式 filename classname hash filename 文件名 c