728x90
๐ inline ์ css ์ ์ฉํ๋ ค๋ฉด?
- <h1 style={ {color:"blue"} }> ํ์ด๋ฃจ ! </h1>
- ๋ฆฌ์กํธ์์ style ์ ๋ฃ์ผ๋ ค๋ฉด ๊ฐ์ฒด๋ก ๋ฃ์ด์ผํ๋๊น!!
- ์ค๊ดํธ๊ฐ ๋๊ฐ ์์ด์ผ ํจ.
๐ css ๊ฐ์ฒด๋ฅผ ๋ฐ์์ ์ ์ธํ๊ณ ๊ฐ์ ธ์ฌ ์๋ ์์.
- const style2 = {
color : 'red',
backgroundColor : 'yellow',
padding : '5px'
}
<h1 style={ style2 }>style obj style</h1>
๐ ์ธ๋ถ css ํ์ผ์ ๋ถ๋ฌ์ฌ ์๋ ์์.
- import './style1.css';
body {
background-color: green;
color : orange;
}
๐ css ๋ชจ๋์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
- ๋ชจ๋ ๋ด๋ถ์ css ๋ --> ํด๋น css ๋ชจ๋์ ๊ฐ์ ธ์จ ์ปดํฌ๋ํธ์๋ง ์ฌ์ฉํ ์ ์์.
- ์ด๋ฆ ์ถฉ๋์ ๋ํ ๊ฑฑ์ ์ ์์ !!
- <h1 className={styles.title} >module css style</h1>
๐ CSS Module ?
- ๋ฆฌ์กํธ์์ CSS ๋ชจ๋์ ํด๋์ค ์ด๋ฆ์ด ๊ธฐ๋ณธ์ ์ผ๋ก ๋ก์ปฌ ๋ฒ์๋ก ์ง์ ๋๋ CSS ํ์ผ.
- CSS ํ์ผ์ .module.css ํ์ฅ์๋ก ๋ง๋ค์ด์ผ ํจ.
- ex) Button.module.css , Flower.module.css
- ์ฅ์ ?
- CSS ๋ชจ๋์ ์ฌ์ฉํ๋ฉด ํน์ ์ปดํฌ๋ํธ์ ๋ก์ปฌ๋ก ๋ฒ์๊ฐ ์ง์ ๋ CSS๋ฅผ ์์ฑํ ์ ์์.
- ์ด๋ ๊ฒ ํ๋ฉด, CSS ํด๋์ค ์ด๋ฆ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ , ์คํ์ผ์ ๋ ์ฝ๊ฒ ์ ์ง ๊ด๋ฆฌํ ์ ์์.
- ------------
- ------------
- โญ๏ธโญ๏ธ composes
- css module ์์๋ง ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ.
- ๋ค๋ฅธ class ๋ฅผ ์์ ๋ฐ๋ ๊ฐ๋ .
- .radius2{ composes : title; border-radius: 20px; }
- <h1 className={styles2.radius2}> == <h1 className={ `${styles2.title}` } style={ {border-radius: 20px;} }> ๊ณผ ๋์ผํจ.
- ๊ฐ๋ฐ์๋ชจ๋ ์ผ์ ํ์ธํด๋ณด๋ฉด, .radius2 ๋จน์ ์๋ฆฌ์ class ๊ฐ ๋ ๊ฐ๋ก ๋์ ์์.
--> ๋ฆฌ์กํธ์์ ์์์ ์ฒ๋ฆฌํด์ค!! -
๋๋ณด๊ธฐ๊ฐ๋ฐ์๋ชจ๋ ํ์ธํด๋ณด๊ธฐ!

๐Global class
- .module.css ํ์ผ์๋ :global(.myheader){ ~~ } ์ด๋ ๊ฒ ์ ์ด์ค์ผ ํจ.
- jsx ํ์ผ์์ ์ฌ์ฉํ ๋๋ <h1 className="myheader" > ์ด๋ ๊ฒ ์ฌ์ฉ !!
์๋๋ className ์ {} ์ค๊ดํธ ์์ ๋ฃ๋๋ฐ,, global ์ "" ์์ ๋ฃ์ด์ค์ผ ํจ!!
import { createRoot } from 'react-dom/client';
import './style1.css';
import styles1 from './style1.module.css';
import styles2 from './style2.module.css';
function App() {
const style2 = {
color : 'red',
backgroundColor : 'yellow',
padding : '5px'
}
return (
<>
<h1 className="myheader" >Global๋ className="" ์ ๋ฃ์ด์ผํจ!</h1>
<h1 style={ {color : "blue"} }>inline style</h1>
<h1 style={ style2 }>obj style</h1>
<h1 className={styles1.title}>module css style <br/> - styles1์ .title</h1>
<h1 className={styles2.title}>module css style <br/> - styles2์ .title</h1>
<h1 className={`${styles2.title} ${styles2.radius}`}>module css style <br/> - style ํด๋์ค๋ฅผ ์ฌ๋ฌ๊ฐ ๋ฃ์ผ๋ ค๋ฉด?</h1>
<h1 className={styles2.radius2}>module css style <br/> - composes </h1>
<h1 className={styles2.radius} style={ {borderRadius:"20px", color:"green"} }>module css style <br/> - class & style </h1>
<p>๋ฆฌ์กํธ ๊ธฐ์ด</p>
</>
);
}
createRoot(document.getElementById('reactCss')).render(
<App />
);
# style1.module.css
.title{
color: blue;
padding : 20px;
background-color: white;
font-size: large;
border: 3px solid red;
}
# style2.module.css
.title{
color: red;
padding : 20px;
background-color: orange;
font-size: small;
border: 3px solid yellow;
}
.radius{
border-radius: 40px;
background-color: blueviolet;
}
.radius2{
composes : title;
border-radius: 20px;
background-color: gray;
border-color: black;
color:black;
}
:global(.myheader) {
padding:10px 20px;
font-size: 50px;
color: white;
background-color: aqua;
}
์ถ์ฒ :
[์์ด๋ณด ํํ์ด์ง๋ง๋ค๊ธฐ]
์์ด๋ณด ํํ์ด์ง๋ง๋ค๊ธฐ
PHP, HTML, CSS, javascript, MySql, Linux, Python, Docker, Vue.js, Git, Laravel ๋ฑ์ ๊ฐ์ ์์์ ์ฌ๋ฆฌ๊ณ ์์ต๋๋ค. ๊ถ๊ธํ์ ๊ฒ์ ๋ฌด์์ด๋ ํด๋น ์์์ ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์๋ฉด ๋ต๋ณ๋๋ฆฌ๊ฒ ์ต๋๋ค. ํ์ฌ ์ฌ๋ผ์ ์๋ ๋ชจ
www.youtube.com
๊ฐ๋ฐ ๊ณต๋ถ๋ฅผ ์ํ ๋ธ๋ก๊ทธ ์ ๋๋ค.
์ค๋ฅ๊ฐ ์๋ค๋ฉด ๋๊ธ๋ก ์๋ ค์ฃผ์ธ์!
๊ฐ์ฌํฉ๋๋ค.

728x90
'front > react' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [react] React Transition (useTransition) (0) | 2026.01.04 |
|---|---|
| [react] React Router (BrowserRouter, Routes, Route, Link, Outlet, useParams) (0) | 2026.01.04 |
| [react] createPortal, Suspense (0) | 2026.01.01 |
| [React] ์ด๋ฒคํธ ํธ๋ค๋ฌ (0) | 2026.01.01 |
| [react] ์ปดํฌ๋ํธ, Props ์ ๋ํด์... (0) | 2025.12.28 |