๐ฎ BootStrap5 ๋ฐ์ํ ์์คํ - ์ปจํ ์ด๋
์ปจํ ์ด๋(Container)
์ปจํ ์ด๋๋ Bootstrap์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๋ ์ด์์ ์์์ด๋ฉฐ ๊ธฐ๋ณธ ๊ทธ๋ฆฌ๋ ์์คํ ์ ์ฌ์ฉํ ๋ ํ์ํฉ๋๋ค.
์ปจํ ์ด๋๋ ๋ด์ฉ์ ํฌํจํ๊ณ ์ฑ์ฐ๊ณ (๋๋ก๋) ๋ด์ฉ์ ์ค์ ์ ๋ ฌํ๋ ๋ฐ์ ์ฌ์ฉ๋ฉ๋๋ค.
Bootstrap์๋ ์ธ ๊ฐ์ง ๋ค๋ฅธ ์ปจํ ์ด๋๊ฐ ์์ต๋๋ค:
- ๊ฐ ๋ฐ์ํ ์ค๋จ์ ์ max-width๋ฅผ ์ค์ ํ๋ .container
- ๋ชจ๋ ์ค๋จ์ ์ width: 100%๋ฅผ ์ค์ ํ๋ .container-fluid
- ์ ์๋ ์ค๋จ์ ๊น์ง width: 100%๋ฅผ ์ค์ ํ๋ .container-{breakpoint}
์๋ ํ๋ ๊ฐ ์ค๋จ์ ์์ ๊ฐ ์ปจํ ์ด๋์ max-width๊ฐ ์๋ .container์ ‘.container-fluid’๊ฐ ์ด๋ป๊ฒ ๋น๊ต๋๋์ง ๋ณด์ฌ์ค๋๋ค.
๋ธ๋ผ์ฐ์ ๋ฐ์ํ ์ปจํ ์ด๋ ์์
์๋ ๋งํฌ ํํ์ด์ง์ ๋ค์ด๊ฐ์ ์ง์ ๋ธ๋ผ์ฐ์ ๊ฐ๋ก ๊ธธ์ด๋ฅผ ์ค์ฌ๋ณด๋ฉด ๋์์ ์ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ์ปจํ ์ด๋
๊ธฐ๋ณธ .container ํด๋์ค๋ ๋ฐ์ํ ๊ณ ์ ๋๋น ์ปจํ ์ด๋์ ๋๋ค.
์ฆ, max-width๊ฐ ๊ฐ ์ค๋จ์ ์์ ๋ณ๊ฒฝ๋ฉ๋๋ค.
<div class="container">
<!-- Content here -->
</div>
๋ฐ์ํ ์ปจํ ์ด๋
๋ฐ์ํ ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉํ๋ฉด ์ง์ ๋ ์ค๋จ์ ์ ๋๋ฌํ ๋๊น์ง ๋๋น๊ฐ 100%์ธ ํด๋์ค๋ฅผ ์ง์ ํ ์ ์์ผ๋ฉฐ, ๊ทธ ์ดํ์๋ ๋ ๋์ ๊ฐ ์ค๋จ์ ์ ๋ํด max-width๋ฅผ ์ ์ฉํฉ๋๋ค.
์๋ฅผ ๋ค์ด, .container-sm์ md, lg, xl ๋ฐ xxl๋ก ํ์ฅ๋๋ sm ์ค๋จ์ ์ ๋๋ฌํ ๋๊น์ง ์์ํ๋ ๋๋น๊ฐ 100%์ ๋๋ค.
<div class="container-sm">100% wide until small breakpoint</div>
<div class="container-md">100% wide until medium breakpoint</div>
<div class="container-lg">100% wide until large breakpoint</div>
<div class="container-xl">100% wide until extra large breakpoint</div>
<div class="container-xxl">100% wide until extra extra large breakpoint</div>
์ ๋ ์ปจํ ์ด๋
๋ทฐํฌํธ์ ์ ์ฒด ๋๋น์ ๊ฑธ์ณ ์๋ ์ ์ฒด ๋๋น ์ปจํ ์ด๋์ .container-fluid๋ฅผ ์ฌ์ฉํฉ๋๋ค.
<div class="container-fluid">
...
</div>
Sass
์์ ๋์์๋ ๊ฒ์ฒ๋ผ Bootstrap์ ์ํ๋ ๋ ์ด์์์ ๋น๋ํ๋ ๋ฐ ๋์์ด ๋๋ ์ผ๋ จ์ ๋ฏธ๋ฆฌ ์ ์๋ ์ปจํ ์ด๋ ํด๋์ค๋ฅผ ์์ฑํฉ๋๋ค.
๋ค์๊ณผ ๊ฐ์ด ๋ฏธ๋ฆฌ ์ ์๋ ์ปจํ ์ด๋ ํด๋์ค๋ฅผ ๊ฐํํ๋ Sass ๋งต(_variables.scss์ ์์)์ ์์ ํ์ฌ ์ฌ์ฉ์ ์ง์ ํ ์ ์์ต๋๋ค:
$container-max-widths: (
sm: 540px,
md: 720px,
lg: 960px,
xl: 1140px,
xxl: 1320px
);
Sass๋ฅผ ์ฌ์ฉ์ ์ง์ ํ๋ ๊ฒ ์ธ์๋ Sass ๋ฏน์ค์ธ์ ์ฌ์ฉํ์ฌ ๊ณ ์ ํ ์ปจํ ์ด๋๋ฅผ ๋ง๋ค ์๋ ์์ต๋๋ค.
/* Source mixin */
@mixin make-container($padding-x: $container-padding-x) {
width: 100%;
padding-right: $padding-x;
padding-left: $padding-x;
margin-right: auto;
margin-left: auto;
}
/* Usage */
.custom-container {
@include make-container();
}
# Reference
https://getbootstrap.kr/docs/5.0/layout/containers/