๐ก fit-content in CSS _ welcoming
๐ฑ ๋ฐ์ํ ๋ค๋น๊ฒ์ด์ ๊ตฌํ
- ๋ชจ๋ฐ์ผ์์ ๋ณด์ฌ์ง๋ ๋ค๋น๊ฒ์ด์ ์ ๋ฐ์ํ์ผ๋ก ๊ตฌํ
- ๋ธ๋ผ์ฐ์ ์ ๋๋น๊ฐ ๋ค๋น๊ฒ์ด์ ์ ์ฝํ ์ธ ๋๋น๋ณด๋ค ์์ ๊ฒฝ์ฐ x์ถ ์คํฌ๋กค์ด ์์ฑ๋๋๋ก ํ๋ค.
// ๋ค๋น๊ฒ์ด์
์ฝ๋ ๊ตฌ์กฐ
export const MobileNav = () => {
...
return (
...
<nav>
<ListMenu>
<ItemMenu>
<Link href={ROUTES.home} passHref>
<LinkMenu>ํ</LinkMenu>
</Link>
</ItemMenu>
<ItemMenu>
<Link href={ROUTES.best} passHref>
<LinkMenu>๋ฒ ์คํธ</LinkMenu>
</Link>
</ItemMenu>
<ItemMenu>
<Link href={ROUTES.welcomeDeal} passHref>
<LinkMenu>์ฐ์ปด๋</LinkMenu>
</Link>
</ItemMenu>
<ItemMenu>
<Link href={ROUTES.event1} passHref>
<LinkMenu>์ต์ ๊ธฐํ์ 1</LinkMenu>
</Link>
</ItemMenu>
<ItemMenu>
<Link href={ROUTES.event2} passHref>
<LinkMenu>์ต์ ๊ธฐํ์ 2</LinkMenu>
</Link>
</ItemMenu>
<ItemMenu>
<Link href={ROUTES.events} passHref>
<LinkMenu>๊ธฐํ์ </LinkMenu>
</Link>
</ItemMenu>
</ListMenu>
</nav>
...
);
};
// ๋ค๋น๊ฒ์ด์
์คํ์ผ
const ListMenu = styled.ul`
overflow-x: auto;
display: flex;
flex-wrap: nowrap;
`;
const ItemMenu = styled.li`
flex: 1;
min-width: 100px;
text-align: center;
`;
-
์ผ๋ฐ์ ์ผ๋ก ์ด ๋ฐฉ๋ฒ์ ์ฃผ๋ก ์ด์ฉํ์๋๋ฐ, ์ฌ๊ธฐ์
min-width
์ ์ ๋๊ฐ์ ์ ์ฉํ๋ฉด ์์ ์ด๋ฏธ์ง์ ๊ฐ์ด ์ฝํ ์ธ ์ ํฌ๊ธฐ์ ์๊ด์์ด ๋์ผํ ๋๋น๋ฅผ ๊ฐ์ง๋ฉด์ ์ฝํ ์ธ ์ฌ์ด ๊ฐ๊ฒฉ์ด ์ผ์ ํ์ง ์๊ฒ ๋๋ค.
โ ์ฝํ ์ธ ์ฌ์ด ๊ฐ๊ฒฉ์ ์ผ์ ํ๊ฒ ์ ์งํ๊ฒ ํ๊ธฐ ์ํด ๋ค์ํ ๊ฐ์ ๋ฃ์ด๋ณด๋ค๊ฐfit-content
์์ฑ๊ฐ์ ๋ฐ๊ฒฌ
(์๋์์ฑ์์ ๋์ค๋ ๋ชจ๋ ๊ฐ์ ๋ฃ๋ค๊ฐ ๋ฐ๊ฒฌ!) -
min-width
๋ฅผ ์ง์ ํ์ง ์์ ๊ฒฝ์ฐ์ UI
์ฝ๋ ์์
min-width: fit-content
๋ฅผ ์ ์ฉํ๋ฉด์flex-wrap: nowrap
์ญ์
โ ๊ฐ ์ฝํ ์ธ ์ ํฌ๊ธฐ๊ฐ ์ ์ง๋๋ฉด์ ๊ฐ๊ฒฉ๋ ์ผ์
// ์์ ๋ ๋ค๋น๊ฒ์ด์
์คํ์ผ
const ListMenu = styled.ul`
overflow-x: auto;
display: flex;
`;
const ItemMenu = styled.li`
flex: 1;
min-width: fit-content;
text-align: center;
`;
๐ฑ fit-content
fit-content
๊ฐ ๋ฌด์์ธ์ง ์ค๋ช ํ๊ธฐ ์ ์ CSS์width
์์ฑ์ ๋ํด ์์๋ณด์
width
- ์์์ ๋๋น๋ฅผ ์ค์
Values
<length>
- ๋๋น๋ฅผ ์ ๋๊ฐ์ผ๋ก ์ง์
px
๊ณผ ๊ฐ์ ์ ๋ ๋จ์๋ฅผ ์ฌ์ฉํ์ฌ ์์๊ฐ ํญ์ ๊ณ ์ ๋ ๋๋น๋ฅผ ๊ฐ๋๋ค.
<percentage>
- Containing block ๋๋น์ ๋ฐฑ๋ถ์จ
%
์ ๊ฐ์ ์๋ ๋จ์๋ฅผ ์ฌ์ฉํ์ฌ ์์์ ๋๋น๊ฐ containing block์ ๋๋น์ ๋น๋กํด์ ์ปค์ง๊ฑฐ๋ ์์์ง ์ ์๋ค.
auto
width
์ ๊ธฐ๋ณธ๊ฐ- ๋ธ๋ผ์ฐ์ ๊ฐ ํด๋น ์์์ ๋๋น๋ฅผ ์๋์ผ๋ก ๊ณ์ฐ
min-content
max-content
์min-content
๋ ํด๋น ์์์ ์ฝํ ์ธ ์ ์ํด ๋๋น๊ฐ ๊ฒฐ์ ๋จ- ์ปจํ ์ธ ๊ฐ ๋์น์ง ์๊ณ ์์์ ๋ฃ์ ์ ์๋ ์ต์ ํฌ๊ธฐ
- ์ปจํ
์ธ ๋ด์์ ๊ฐ์ฅ ๊ธด ๋จ์ด๊ฐ ๋๋น๊ฐ ๋๋ค.
โ ๊ณ ์ ํ ์ต์ ๋๋น(The intrinsic minimum width.)
max-content
- ๋ชจ๋ ์ปจํ ์ธ ๋ฅผ ํฌํจํ๊ธฐ ์ํด ํ์ํ ํฌ๊ธฐ
fit-content
- ๊ฐ์ฉ ๋๋น๋ฅผ ์ฐจ์งํ์ง๋ง,
max-content
๋ ์ด๊ณผํ์ง ์๋ ํฌ๊ธฐ
โ "The box will use the available space, but never more than max-content" ๋ฅผ ์์ญ
(fit-content - MDN ์์ ๋ฐ์ทํ ๋ด์ฉ) max-content
์auto
์ ํ์ด๋ธ๋ฆฌ๋ ๋ชจ๋์ฒ๋ผ ๋์- ๊ฐ์ฉ ๋๋น๊ฐ ๋ถ์กฑํ์ง ์์ ๊ฒฝ์ฐ
max-content
์ฒ๋ผ ๋์, ๊ฐ์ฉ ๋๋น๊ฐ ๋ถ์กฑํ ๊ฒฝ์ฐauto
์ฒ๋ผ ๋์
โ ์๋์ ์์ ๋ฅผ ๋ณด๋ฉด '๊ฐ์ฉ ๋๋น๊ฐ ๋ถ์กฑํ ๊ฒฝ์ฐauto
์ฒ๋ผ ๋์' ํ๋ค๋ ์ค๋ช ์ด ์ดํด๋์ง ์์.
([CSS] width ์์ฑ๊ณผ ๋๋น ๊ฒฐ์ ๋งค์ปค๋์ฆ ์์ ๋ฐ์ทํ ๋ด์ฉ)
- ๊ฐ์ฉ ๋๋น๋ฅผ ์ฐจ์งํ์ง๋ง,
์์
<p>
์ ๋๋น๋ฅผ ๊ฐ๊ฐmin-content
,max-content
,fit-content
๋ก ์ง์ - ๋ถ๋ชจ ์์์ธ
<div>
์ ๋๋น์ ๋ฐ๋ผ ์์ ์์์ธ<p>
์ ๋๋น๋ฅผ ๋น๊ต fit-content
๋ ๊ฐ์ฉ ๋๋น๊ฐ ์ถฉ๋ถํ ๋max-content
์ ๊ฐ์ด ๋์ํ๊ณ , ๊ฐ์ฉ ๋๋น๊ฐ ๋ถ์กฑํ ๋min-content
์ฒ๋ผ ๋์
์ฐธ๊ณ ๋งํฌ
- Understanding min-content, max-content, and fit-content in CSS
โ ๋ค์ํ ์์ ์ ์์ธํ ์ค๋ช ์ด ์์ฑ๋์ด ์์- [CSS] width ์์ฑ๊ณผ ๋๋น ๊ฒฐ์ ๋งค์ปค๋์ฆ
- width - MDN
- fit-content - MDN
์ถ๊ฐ์ ์ผ๋ก ๊ณต๋ถํ ๋ด์ฉ
๋ง๋ฌด๋ฆฌ
width
์์ฑ์ ์์ฃผ ํญ์ ์ฌ์ฉํ๋ฉด์๋ ์ ๋๋ก ์ดํดํ์ง ๋ชปํ๊ณ ์์๋ค.- ๋ชจ๋ฅด๊ณ ์์๋ ์์ฑ๊ฐ์ ๋ํด ์๊ฒ ๋์๊ณ ์ ์ ํ ์ฌ์ฉํ ์ ์๊ฒ ๋์๋ค..!
- ํ์์๋ CSS๋ ์ฌ๋ฏธ์๋ค๊ณ ์๊ฐํ๊ณ ์ ์ง ์๊ฒ ์๊ณ ์๋ค๊ณ ์๊ฐํ๋๋ฐ ์๋๋ค.. ๋ชจ๋ฅด๋ ๊ฒ์ด ๋๋ฌด ๋ง๋ค.
โ ๋ ๊น์ด์๊ฒ ๊ณต๋ถํด์ผ์ง - ์ค๋ ์ค์ ์คํฐ๋์์ ๋ค๋ฅธ ์คํฐ๋์์ ๋ฐํ๋ฅผ ํตํด ์๊ฒ๋ ๋ด์ฉ
โ<button>
์๋cursor: pointer
๋ฅผ ์ ์ฉํ์ง ์๋ ๊ฒ์ด ์ข๋ค.
โ ์?! ๊ถ๊ธํด์ ์ ์ ์ ์ ์ ใ ๊ณต๋ถํ ๋ด์ฉ ์ถ๊ฐ~
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐ก fit-content in CSS _ welcoming), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@qhflrnfl4324/fit-content-in-CSS-welcoming์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค