- Published on
๐ ์ปฌ๋ฌ๋ฆฌ์คํธ ํ๋ก์ ํธ #15 css ์์
- ๊ธ์ด์ด
๐
tailwind์ css ์ฌ์ฉ
์ฌ์ฌ์ฉ๋๋ ์ปดํฌ๋ํธ ๋ถ๋ฆฌํ๊ธฐ
ColorSelectionInput ์ผ๋ก
๊ฐ๊ฐ margin์ ์ฃผ๋ ๋์ ... gap-?์ ์ฌ์ฉํ๊ธฐ
<form
className="flex flex-col gap-2"
...>
useId
label
๊ณผ input
์ htmlFor
๋ก ์ฐ๊ฒฐํด์ค ๋, react 18๋ถํฐ ์ฌ์ฉ๊ฐ๋ฅํ useId
๋ฅผ ์ฌ์ฉํ๋ฉด ํธ๋ฆฌํจ~
svg importํ๊ธฐ
/src/img/icon.svg
์ ๊ฐ์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ํ๋์ฝ๋ฉํ๋ฉด, ๊ฐ๋ฐ ์ค์๋ง ์ฌ์ฉ ๊ฐ๋ฅ...
๋น๋ํ๊ณ ๋๋ฉด assets ํด๋๋ก ์ด๋ํด์ผ ํ๊ธฐ ๋๋ฌธ์, svg ํ์ผ์ ์๋๊ฒฝ๋ก๋ก importํ๊ฒ ๋๋ฉด ๋ฒ๋ค๋ฌ๊ฐ ์์์ ์ ์ ํ url์ ๋ฌธ์์ด๋ก ์ ๊ณตํจ.
icon์ ํฌ๊ธฐ ์ง์ ํด์ฃผ๊ธฐ
์ฌ์ฉ์๊ฐ ๋ณด์ง ๋ชปํ๋ hidden input์๋ readonly๋ฅผ ๊ฑธ์ด์ค ๊ฒ
์ ๊ทธ๋ฌ๋ฉด react๊ฐ value๋ ์๋๋ฐ, onChange๊ฐ ์๋ค๊ณ ๊ฒฝ๊ณ ๋ฅผ ๋์...
<input type="text" name="colors" value={JSON.stringify(colors)} hidden={true} readOnly />
๋ฒํผ์ height๋ฅผ ์ง์ ์ง์ ํ์ง ๋ง์
๊ธ์ ํฌ๊ธฐ๊ฐ ๋ณํ๋ฉด, height๊ฐ ๋์ ์ผ๋ก ๋์ด๋๋๋ก