- Published on
๐ ์ปฌ๋ฌ๋ฆฌ์คํธ ํ๋ก์ ํธ #16 css ์์
- ๊ธ์ด์ด
๐
tailwind์ css ์ฌ์ฉ
์ค๋๋ ์ด์ด์ง๋ ํ pico.css
์ ์๊ฐ..
์ด๋ฐ ์ ๋ฐ css
๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ค๋ณด๋ ์ด๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ์ ์ฉ๋์๋์ง
๋ํ๋์๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ด๋ ค์ ์ด๋ฐ์ ๊ธฐ๋ณธ์ ์ธ css
๋ฅผ ์
ํ ๋ ์ฌ์ฉํ๋ pico.css
๋ฅผ ์์ ๊ณ
tailwind.css
์ daisy UI
๋ฅผ ๋์ ์ ์ฉํ๊ณ ์๋ ์ค์ด๋ค.
width๋ฅผ ref๋ฅผ ์ด์ฉํด์ ๊ฐ์ ธ์ค๊ธฐ
์ด์ ์๋ with๊ฐ 240์ผ๋ก ๊ณ ์ ๊ฐ์ด์๋๋ฐ, ๋ฐ์ํ ๋์์ธ์ ํ๊ธฐ์๋ ๊ณ ์ ๋ ๊ฐ์ด ์๋ง๊ธฐ๋ ํ๊ณ
๋ ๊ฐ์ table์ด ์๋ก ๊ฒน์ณ์์ด ๋ฌธ์ ์๋ค. ์ด ๋ฌธ์ ๋ฅผ ํ๊ธฐ์ํด ๋ค์๊ณผ ๊ฐ์ด ref๋ฅผ ์ด์ฉํด
ํ์ฌ ํ์ด์ง์ ๊ฐ๋ก ๋๋น๋ฅผ ๊ฐ์ ธ์์ table์ ๊ฐ๋ก ๋๋น๋ฅผ ์ ํด์ฃผ๋๋ก ๋ณ๊ฒฝํ๋ค.
- width๊ฐ 240์ผ๋ก ๊ณ ์ ๊ฐ์ด์๋๋ฐ...
- ๊ทธ๋ฌ๋ฉด ํ๋ ํธ ๋ฐ์ค ํฌ๊ธฐ์ ๋ฐ๋ผ์... ์๋์ผ๋ก ๊ฐ์ ธ์ฌ ์ ์๋?
- table์ ํ์ฌ width๋ฅผ ์ด๋ป๊ฒ ๊ฐ์ ธ์ค์ง?
- table์ useRef๋ฅผ ์จ์ ๊ฐ์ ธ์ค๊ณ
tableRef.current?.clientWidth
๋ฅผ ์จ์ width ํ๋กํผํฐ๋ฅผ ๊บผ๋ด๋ฉด ๋๊ฒ ๊ตฌ๋~
ref๋ dom element
๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฑฐ~
const tableRef = useRef<HTMLTableElement>(null);
console.log(tableRef.current) // table ์์๊ฐ ๋ค์ด์์
const width = tableRef.current?.clientWidth ?? 480; // table ์์์ ๊ฐ๋ก ๊ธธ์ด(ํฝ์
๋ก)
<table ref={tableRef} className="selectedContainer w-full">
gap์ผ๋ก ๊ฐ๊ฒฉ ์ฃผ๊ธฐ
margin
์ด๋ padding
์ผ๋ก ๊ฐ๊ฒฉ์ ์ฃผ๋ ๊ฒ๋ณด๋ค
gap
์ ์ฃผ๋ ๊ฒ ๋ ์ข๋ค๊ณ ๋ค์ด์ tailwind.css
๋ฅผ ์ฌ์ฉํ๋ฉด์ gap
์ ๋ง์ด ์ ์ฉํด๋ณด์๋ค.
์ด๋ฏธ์ง ๋ฅ๊ธ๊ฒ ๋ง๋ค๊ธฐ
์ด๊ฒ๋ css
ํ์ผ๋ก ํ์ ๋๋ border
์ ๊ฐ์ ์ฃผ์๋๋ฐ
tailwind
์์๋ round-full
๋ก ์ฃผ์๋ค.
ํ ๋ง ์ ํ
๋ฐ์ด์ง UI ํ
๋ง ์ ํ ๋ฌธ์
๋ฐ์ด์ง UI๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ๋ฌ๊ฐ์ง ์์ ํ
๋ง๋ฅผ ์ ํํด์ ์ฌ์ฉํ ์ ์๋๋ฐ
์ง๊ธ ํ๋ฉด์ ๋
ธ๋์์ด ๋ฉ์ธ ์ปฌ๋ฌ๋ผ์ bumblebee
ํ
๋ง๋ฅผ ์ ์ฉํ๋ค.
๋ฐ์ํ UI ๋ง๋ค๊ธฐ
tailwind
๋ก ๋ฐ์ํ ๋์์ธ์ ์ ์ฉํด๋ณด์๋ค.
ํ๋ฉด ํฌ๊ธฐ์ ๋ฐ๋ผ width ๋น์จ์ด ๋ฌ๋ผ์ง๊ฒ
w-1/3
=== width: 33.3333%;
w-1/2 lg:w-1/3
=== ํ๋ฉด์ด ์์ ๋์๋ width: 50%
์ปค์ง๋ฉด width: 33.3333%;
w-full sm:w-1/3 lg:w-1/2
=== ์ ๋ง ์์ผ๋ฉด width: 100%
ํ๋ฉด์ด ์ข ์์ ๋์๋ width: 50%;
์ปค์ง๋ฉด width: 33.333%
;
ํ๋ฉด ํฌ๊ธฐ์ ๋ฐ๋ผ ๊ฐ๋ก ์ธ๋ก
flex-row
=== flex-direction: row
๊ฐ๋ก๋ก ๋ฐฐ์น
flex-col sm:flex-row
ํ๋ฉด์ด sm๋ณด๋ค ์์ผ๋ฉด ์ธ๋ก๋ก ๋ฐฐ์น, ํ๋ฉด์ด sm(ํธ๋ํฐ)๋ณด๋ค ํฌ๋ฉด ๊ฐ๋ก๋ก ๋ฐฐ์น
// ๊ฒฐ๊ณผ
<div className="w-full flex flex-col sm:flex-row pt-16 pb-16 gap-2">
<div className="h-full w-full sm:w-1/2 lg:w-1/3">
<img > {/* ํ๋กํ ์ฌ์ง*/}
</div>
</div>