# ์ ์ ์ ....์ ์ ์๊ณ ์ถ๋ค....
์ค๋ ํ๋ฃจ์ข ์ผ ํ ์๊ฐ์ด๋ค.
์ด์ PR ์ ์ถ์ ์ํด ๋๋์ ์๋ฒฝ๊น์ง ์ฝ๋ฉ์ ํ๋ค.
๋ฆ๊ฒ ์๊ฑฐ๋ผ๊ณ ๋ ์์ํ๊ธด ํ์ง๋ง 5์๊ฐ ๋์ด์ ์์ ์ด ์ผ์ถ ๋ง๋ฌด๋ฆฌ๊ฐ ๋๊ณ ์ผ์ผํ๊ณ ๋ฅผ ๋๋ต์ ์ผ๋ก ์์ฑํ๊ณ ๋๋ 6์๊ฐ ๋์ด์์ผ ์ ์ ์์๋ค.
๋๋๋ ๋๋ ๋๋ค ์์์ผ๋ถํฐ ์ด์ด์ ธ์จ ํ๊ท ์๋ฒฝ 4 ~ 5์ ์ทจ์นจ์ผ๋ก ์ธํ ํผ๋ก ๋์ ์ผ๋ก ๋ฐฑ์๋์ ์๋ฏธ์๊ฒ ์ํด๋ฅผ ๊ตฌํ๊ณ ์ค์ 11์๊น์ง, ํ์๋ณด๋ค 1์๊ฐ ๋ ์๊ณ ์๋๋ฐ๋ ์ ์ ์ ๊ฒ ๊ฐ์ง๊ฐ ์๊ณ ์ง์ง ๊ทธ๋ฅ ๋๋ฌด ์กธ๋ ธ๋ค.
๊ทธ๋๋ ์ฝ๋๋ฅผ ์ง๋ฉด์ ์กธ์ง๋ ์์ ๋คํ์ด์๋ค.
๋ด์ผ์ ๋๋์ด ๊ธ์์ผ! ์ฝ์ฟผ ๊ฐ๋จ ์ผํฐ์ ๋๊ฐ๋ ๋ ์ธ๋ฐ ๋ด์ผ์ ์ข ์ผ์ฐ ์ง์ ๋ค์ด์ฌ๊น ํ๋ค.
๋์ด๋ฌด ํผ๊ณคํด~~~
# ์ค๋ ํ ์ผ์....
์ด์ ์์ ํ๋ ๋ฒํผ ์ปดํฌ๋ํธ๋ฅผ ๋ง์ ๋ง๋ฌด๋ฆฌํ๊ณ ๋ก๊ทธ์ธ ํ์ด์ง๋ฅผ ๊ตฌํํ๋ค.
๊ทธ๋ฌ๋ ๋์ ์ค๋๋ ํ๋ฃจ์ข ์ผ Styled Components์ ์ธ์ด๊ฑฐ ๊ฐ๋ค.
์ด๋ป๊ฒ ํ๋ฉด ๋ด๊ฐ ์ํ๋๋๋ก ํ์ฅ์ฑ ์๊ฒ ์คํ์ผ์ ์ ์ฉ ํ ์ ์์์ง ๊ทธ๋ฌ๋ฉด์ ๋์์ ์ด๋ป๊ฒ ํ๋ฉด ๊น๋ํ๊ฒ ์ฝ๋๋ฅผ ์งค ์ ์์์ง๋ฅผ ๊ณ ๋ฏผํ๋ค๋ณด๋ ๋จ์ํ ์คํ์ผ์ ๋ง๋๋๋ฐ๋ ์๊ฐ์ด ๋๋ฌด ์ค๋ ๊ฑธ๋ ธ๋ค.
๊ทธ๋๋ ๋ค ๋ง๋ค๊ณ ๋๋ ๋ฟ๋ฏํ์ง๋ง....
์ง๋๊ฐ ๋๋ฌด ์๋๊ฐ๋๊ฑฐ ์๋๊ฐ ์ถ์ด ์ด์ง ๊ฑฑ์ ์ด ๋๋ค.
# ์ค๋ ์๊ฒ ๋ CSS ์ง์
1. disabled ๋์ด ์์ด๋ active ๋ ์ ์๋ค!

:active {
background: ${({ theme }) => theme.COLOR.primary.initial};
border: 4px solid ${({ theme }) => theme.COLOR.primary.focus};
}
๋น์ฐํ disabled ๋๊น hover๋ active๋ ์๋จน๊ฒ ์ง ์๊ฐํ๋๋ฐ ์ฌ๊ฑธ...๋ค ๋จนํ๋ค....
์์ด๋ฐ๊ฐ ๋๋์ ํจ๊ป ์์๋ณด๋...ใ
:active doesn't exclude :disabled elements.
์๋์ ๊ฐ์ด enabled ์ผ๋๋ง ์ ์ฉ๋๋๋ก ์ค์ ํด์ค์ผ ํ๋ค๊ณ ํ๋ค!
:enabled:active {
background: ${({ theme }) => theme.COLOR.primary.initial};
border: 4px solid ${({ theme }) => theme.COLOR.primary.focus};
}
2. Styled Components์์ ํ์ ์ ํ์๋ฅผ ์ด์ฉํ margin ๋ฃ๊ธฐ!

๋๊ฐ์ Input ์ฌ์ด์ ๊ฐ๊ฒฉ์ ๋ฃ์ด์ผ ํ๋๋ฐ ์ฒ์์๋ ์ง๊ธ๊น์ง ํด์๋ ๊ฒ์ฒ๋ผ div๋ก ๊ฐ์ธ๊ณ height๋ฅผ ๋ input์ height * 2 + ์ฌ๋ฐฑํฌ๊ธฐ๋ก ๊ณ ์ ํ๊ณ space between์ ๋ฃ์์๋ค.
์ด๋ฐ ๋ฐฉ์์ผ๋ก ๋ก๊ทธ์ธ ํ์ด์ง์ ์๋ ๋ชจ๋ ๊ฐ๊ฒฉ์ ๋ฒ๋ ธ๋๋ฐ ๋จ์ํ ์ input ๋๊ฐ์ ์ฌ๋ฐฑ์ ์ค๋๋ ๊ด์ฐฎ์๋๋ฐ ๋ชจ๋ ์ฌ๋ฐฑ์ ๋ค div ๊ฐ์ + Flex ํด๋ฒ๋ฆฌ๋ ํ๊ทธ์ Depth๊ฐ ๋๋ฌด ๊น์ด์ ธ๋ฒ๋ ธ๋ค.
๊ทธ์ ์์ผ ์ ์ด๊ฑฐ ์๋ฐ๊ตฌ๋ ์ถ์ด์ ธ์ ๋๋์๊ฒ SOS๋ฅผ ํ๋๋ ๋๋๊ฐ ํ์ ์ ํ์๋ฅผ ์ฌ์ฉํ๋ ๋ฒ์ ์๋ ค์คฌ๋ค!
const StyledLoginInput = styled(Styled_textInput)`
& + & {
margin-top: 16px;
}
`;
์ ๋ ๊ฒ ์ค์ ํ๋ฉด ์๋์ ๋น๋ฐ๋ฒํธ input ์์๋ง 16์ margin์ด ์ ์ฉ๋๋ค!
const Styled_buttonWrapper = styled.div`
display: flex;
flex-direction: column;
align-items: center;
button + button {
margin-top: 16px;
}
`;
์ดํ์ ๋ ๋ฒํผ ์ฌ์ด๋ฅผ ๋์ธ ๋๋ ์ ์ฉํด๋ดค๋ค!
๋๋์งฑ!
( โโกโพ ) b
๏ผฟ(_ใค/๏ฟฃ๏ฟฃ/๏ผฟ
ใ ๏ผผ/๏ผฟ๏ผฟ/
# PR ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์๋ค!

์ฝ๋์ค์ฟผ๋์ ๋ง์ง๋ง ํ๋ก์ ํธ์ ๋ฆฌ๋ทฐ์ด๋ก ๋ฐฐ์ ๋ฐ์ ๋ถ์ Goody์๋ค.
ํ๋ฒ๋ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์๋ณธ์ ์ด ์์ด์ ์ด๋ค ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ์์ง ๊ถ๊ธํ๋๋ฐ
์ง๋ ์ํ์๋์ ๋๋์ ํจ๊ป ํ๋ ๊ณ ๋ฏผ์ ๋ํด ๋ชจ๋ ์ ์ฑ์ค๋ฝ๊ฒ ๋ต๋ณ์ ๋จ๊ฒจ์ฃผ์ ์ ๋๋ฌด ๊ฐ์ฌํ๋ค!
๋๋ ์์ผ๋ก ๋จ์ ๋ค์ฏ ๋ฒ์ PR์ ์ข ๋ ์ ์ฑ์ ๋คํด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค!
'๐ DIARY > Codesquad Masters' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[220614] ์ฝ๋์ค์ฟผ๋ ๋ง์คํฐ์ฆ ์ผ์ผ ํ๊ณ (0) | 2022.06.15 |
---|---|
[220613] ์ฝ๋์ค์ฟผ๋ ๋ง์คํฐ์ฆ ์ผ์ผ ํ๊ณ (0) | 2022.06.14 |
[220516 ~ 20] ์ฝ๋์ค์ฟผ๋ ๋ง์คํฐ์ฆ ์ฃผ๊ฐ ํ๊ณ (0) | 2022.05.20 |
[220512] ์ฝ๋์ค์ฟผ๋ ๋ง์คํฐ์ฆ ์ผ์ผ ํ๊ณ (0) | 2022.05.13 |