React學習———CSS Modules(樣式模塊化)

CSS Modules

CSS Modules(樣式模塊化)是一種用于模塊化和局部作用域化CSS樣式的技術,讓CSS只在當前組件內生效,避免全局樣式沖突的技術方案

工作原理

  • 文件命名:通常以.module.css.module.less.module.scss等結尾:例如:index.module.less
  • 局部作用域CSS Modules通過為類名生成唯一的哈希值,確保樣式不會與其他模塊的樣式沖突
/* index.module.less */
.root {background: #fff;
}

每個樣式類名在編譯時會被自動生成一個獨一無二的哈希后綴,編譯后的類名可能變成root__3k2jf_1只在當前組件內生效

  • 模塊化導入:在JavaScriptTypeScript中,可以直接導入CSS Modules文件,并通過對象的形式訪問類名
  • 支持組合CSS Modules允許通過composes關鍵字組合多個類名,實現樣式的復用
.base{padding: 10px;
}
.button{composes: base;background-color: blue;
}
  • 與構建工具集成CSS Modules通常與 WebpackVite等構建工具結合使用,通過配置啟用模塊化功能,例如,在Webpack中可以通過css-loadermodules選項啟用CSS Modules

典型用法

// Button.modules.css

.button {background-color: #007bff;color: white;padding: 10px 20px;border: none;border-radius: 5px;
}.button:hover {background-color: #0056b3;
}

// React 組件中

import React from 'react'
import styles from './Button.modules.css'const Button = () => {<button className={styles.button}>點擊</button>
}
export default Button 

全局樣式

  • :global:是CSS Modules(樣式模塊化)的一個特殊語法,用于聲明全局樣式。
.root {...:global {.logo-wrap { ... }}
}

1、.root依然是局部樣式,只在當前組件生效
2、:global里的.logo-wrap這個類名會直接變成全局類名,不會被哈希處理,任何地方都能使用

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/81245.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/81245.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/81245.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

agent 智能體應用產品:生圖、生視頻、代碼等

生圖片 Lovart&#xff1a;全球首個設計 Agent https://www.lovart.ai/ 生視頻 AI 視頻 Agent 產品&#xff1a;Medeo https://www.medeo.app/ 代碼 vscode copilot、cursor、trae 其他research manus grok等各個大模型產品

青少年ctf平臺應急響應-應急響應2

題目&#xff1a; 當前服務器被創建了一個新的用戶&#xff0c;請提交新用戶的用戶名&#xff0c;得到的結果 ssh rootchallenge.qsnctf.com -p 30327 這個命令用于通過 SSH 協議連接到指定的遠程服務器。具體解釋如下&#xff1a; ssh&#xff1a;這是在 Unix-like 系統中…

碼蹄集——圓包含

MT1181 圓包含 輸入2個圓的圓心的坐標值&#xff08;x&#xff0c;y&#xff09;和半徑&#xff0c;判斷斷一個圓是否完全包含另一個圓&#xff0c;輸出YES或者NO。另&#xff1a;內切不算做完全包含。 格式 輸入格式&#xff1a;輸入整型&#xff0c;空格分隔。 每行輸入一組…

基于EMD-PCA-LSTM的光伏功率預測模型研究

摘要 本文提出了一種結合經驗模態分解(EMD)、主成分分析(PCA)和長短期記憶網絡(LSTM)的混合預測模型,用于提高光伏功率預測的準確性。該模型首先利用EMD算法將非平穩的光伏功率序列分解為多個本征模態函數(IMF),然后通過PCA對多維氣象特征進行降維處理,最后將處理后的特征輸…

MYSQL創建索引的原則

創建索引的原則包括&#xff1a; 表中的數據量超過10萬以上時考慮創建索引。 選擇查詢頻繁的字段作為索引&#xff0c;如查詢條件、排序字段或分組字段。 盡量使用復合索引&#xff0c;覆蓋SQL的返回值。 如果字段區分度不高&#xff0c;可以將其放在組合索引的后面。 對于…

vue+threeJS 大理石貼圖

嗨&#xff0c;我是小路。今天主要和大家分享的主題是“vuethreeJS 大理石貼圖”。 通過 Vue 3 和 Three.js 實現大理石紋理效果&#xff0c;并將這種技術應用于產品展示、虛擬展覽、甚至是互動游戲之中&#xff0c;其潛力無窮。今天主要介紹基礎的大理石貼圖。 vueth…

依賴倒轉原則:Java 架構設計的核心準則

在軟件開發的漫長演進歷程中&#xff0c;設計原則如同燈塔般指引著工程師構建可維護、可擴展的系統。其中&#xff0c;依賴倒轉原則&#xff08;Dependency Inversion Principle, DIP&#xff09;作為面向對象設計的五大核心原則之一&#xff0c;深刻影響著系統架構的穩定性與靈…

使用Frp搭建內網穿透,外網也可以訪問本地電腦。

一、準備 1、服務器&#xff1a;需要一臺外網可以訪問的服務器&#xff0c;不在乎配置&#xff0c;寬帶好就行。我用的是linux服務器。&#xff08;一般買一個1核1g的云服務器就行&#xff09;&#xff0c;因為配置高的服務器貴&#xff0c;所以這是個擇中辦法。 2、客戶端&a…

Spyglass:跨時鐘域同步(同步使能)

相關閱讀 Spyglasshttps://blog.csdn.net/weixin_45791458/category_12828934.html?spm1001.2014.3001.5482 簡介 同步使能方案主要用于數據信號跨時鐘域同步&#xff0c;該方案將一個控制信號同步至目標時鐘域并用其作為數據信號的捕獲觸發器的使能信號&#xff0c;如圖1所示…

人工智能 (AI) 在無線接入網絡 (RAN) 中的變革性作用

隨著電信行業向更智能、更高效的系統邁進&#xff0c;將 AI 集成到 RAN 中已不再是可有可無&#xff0c;而是至關重要。 隨著 6G 時代的到來&#xff0c;人工智能 (AI) 有望降低運營成本&#xff0c;并帶來更大的盈利機會。AI-RAN 正處于這一變革的前沿&#xff0c;在 RAN 環境…

多線程代碼案例-2 阻塞隊列

阻塞隊列 通過數據結構的學習&#xff0c;我們都知道了隊列是一種“先進先出”的數據結構。阻塞隊列&#xff0c;是基于普通隊列&#xff0c;做出擴展的一種特殊隊列。 特點 1、線程安全的 2、具有阻塞功能&#xff1a;1、如果針對一個已經滿了的隊列進行入隊列&#xff0c…

【筆記】記一次PyCharm的問題反饋

#工作記錄 最近更新至 PyCharm 社區版的最新版本后&#xff0c;我遇到了多個影響使用體驗的問題。令人感到不便的是&#xff0c;一些在舊版本中非常便捷的功能&#xff0c;在新版本中卻變得操作復雜、不夠直觀。過去&#xff0c;我一直通過 PyCharm 內置的故障報告與反饋機制反…

學習以任務為中心的潛動作,隨地采取行動

25年5月來自香港大學、OpenDriveLab 和智元機器人的論文“Learning to Act Anywhere with Task-centric Latent Actions”。 通用機器人應該在各種環境中高效運行。然而&#xff0c;大多數現有方法嚴重依賴于擴展動作標注數據來增強其能力。因此&#xff0c;它們通常局限于單一…

相關行業發展趨勢寫一個爬蟲程序

前兩篇我利用爬蟲進行營銷推廣&#xff0c;并且寫了一個品牌口碑爬蟲的代碼示例。現在根據轉向行業發展趨勢&#xff0c;可能是希望收集數據來分析市場動向、競爭對手動態或者新興技術趨勢。 技術實現方面&#xff0c;需要選擇合適的工具和庫。Python的requests和BeautifulSou…

MapReduce 實現 WordCount

在大數據處理領域&#xff0c;MapReduce 是一種極為重要的編程模型&#xff0c;它可以將大規模的數據處理任務分解為多個并行的子任務&#xff0c;從而高效地處理海量數據。WordCount&#xff08;詞頻統計&#xff09;是 MapReduce 中最經典的示例之一&#xff0c;通過它能很好…

GelSight Mobile 4.1 軟件更新推出先進測量工具與報告功能

GelSight Mobile 4.1 軟件完成版本更新&#xff0c;為表面分析領域帶來重要功能升級。此次更新圍繞測量工具與報告功能優化&#xff0c;助力用戶更高效地量化材料表面特征&#xff0c;減少現場測量時間&#xff0c;優化生產流程。 新型測量工具&#xff0c;增強復雜曲面分析能力…

base64加密為何可以直接找三方網站解密

你問得非常關鍵&#xff1a;**Base64 為什么“加密”后還能被網上輕松“解密”&#xff1f;**這是一個很多人容易誤解的點&#xff0c;下面我來用通俗的語言幫你徹底搞懂。 ? 1. Base64 根本不是加密算法 Base64 只是“編碼&#xff08;Encoding&#xff09;”&#xff0c;不是…

IP地址、端口、TCP介紹、socket介紹、程序中socket管理

1、IP地址&#xff1a;IP 地址就是 標識網絡中設備的一個地址&#xff0c;好比現實生活中的家庭地址。IP 地址的作用是 標識網絡中唯一的一臺設備的&#xff0c;也就是說通過IP地址能夠找到網絡中某臺設備。 2、端口&#xff1a;代表不同的進程,如下圖&#xff1a; 3、socket:…

【計算機網絡】HTTP/1.0,HTTP/1.1,HTTP/2,HTTP/3匯總講解,清晰表格整理面試重點對比

表格匯總 對比維度HTTP/1.0HTTP/1.1HTTP/2HTTP/3傳輸協議TCPTCPTCP/TLS&#xff08;默認加密&#xff09;UDP&#xff08;基于 QUIC 協議&#xff09;連接方式短連接&#xff08;每次請求/響應后斷開&#xff09;引入持久連接&#xff08;Persistent Connection&#xff09;&a…

LLaMA-Factory微調大模型Qwen2.5

1、開始ModelScope社區GPU環境 訓練或微調模型都是非常耗費算力的。如果電腦的配置不高,可使用一些云服務器來做這項工作。如ModelScope(魔搭)社區的GPU環境,目前提供36小時免費運算,足夠微調一個大模型了。 注冊ModelScope(魔搭)社區賬號(可能還要注冊或認證阿里云賬號)…