3.1 background-repeat ์์ฑ
CSS์ background-repeat
์ background-size
์์ฑ์ ์์ ๋ด์์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ์ด๋ป๊ฒ ๋ฐ๋ณต๋๊ณ ํฌ๊ธฐ๊ฐ ์กฐ์ ๋๋์ง ์ ์ดํ๋ ๋ฐ ์ฌ์ฉ๋ผ. ์ด ์์ฑ๋ค์ ์น ๊ฐ๋ฐ์๋ค์๊ฒ ์๊ฐ์ ์ผ๋ก ๋งค๋ ฅ์ ์ธ ๋ฐฐ๊ฒฝ์ ๋ง๋ค ์ ์๋ ์ ์ฐํ ๋๊ตฌ๋ฅผ ์ ๊ณตํด. ๊ฐ๊ฐ์ ์์ฑ์ ๋ ์์ธํ ์ดํด๋ณด์.
background-repeat
์์ฑ์ ์์ ๋ด์์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ์ด๋ป๊ฒ ๋ฐ๋ณต๋๋์ง๋ฅผ ๊ฒฐ์ ํด. ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ ๊ฐ๋ก์ ์ธ๋ก๋ก ๋ฐ๋ณต๋ผ.
๊ฐ๋ค
repeat
: ์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก์ ์ธ๋ก๋ก ๋ฐ๋ณต๋ผ (๊ธฐ๋ณธ๊ฐ)repeat-x
: ์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก๋ก๋ง ๋ฐ๋ณต๋ผrepeat-y
: ์ด๋ฏธ์ง๊ฐ ์ธ๋ก๋ก๋ง ๋ฐ๋ณต๋ผno-repeat
: ์ด๋ฏธ์ง๊ฐ ๋ฐ๋ณต๋์ง ์์
1. repeat ๊ฐ:
์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก์ ์ธ๋ก๋ก ๋ฐ๋ณต๋ผ.
.repeat {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/50');
background-repeat: repeat;
border: 1px solid #000;
}
<div class="repeat">๊ฐ๋ก์ ์ธ๋ก๋ก ๋ฐ๋ณต</div>
2. repeat-x ๊ฐ:
์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก๋ก๋ง ๋ฐ๋ณต๋ผ.
.repeat-x {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/50');
background-repeat: repeat-x;
border: 1px solid #000;
}
<div class="repeat-x">๊ฐ๋ก๋ก๋ง ๋ฐ๋ณต</div>
3. repeat-y ๊ฐ:
์ด๋ฏธ์ง๊ฐ ์ธ๋ก๋ก๋ง ๋ฐ๋ณต๋ผ.
.repeat-y {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/50');
background-repeat: repeat-y;
border: 1px solid #000;
}
<div class="repeat-y">์ธ๋ก๋ก๋ง ๋ฐ๋ณต</div>
4. no-repeat ๊ฐ:
์ด๋ฏธ์ง๊ฐ ๋ฐ๋ณต๋์ง ์์.
.no-repeat {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/50');
background-repeat: no-repeat;
border: 1px solid #000;
}
<div class="no-repeat">๋ฐ๋ณต ์์</div>
์ฝ๋ ์ค๋ช
.repeat
: ์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก์ ์ธ๋ก๋ก ๋ฐ๋ณต๋์ด ์์๋ฅผ ๋ชจ๋ ์ฑ์.repeat-x
: ์ด๋ฏธ์ง๊ฐ ๊ฐ๋ก๋ก๋ง ๋ฐ๋ณต๋ผ.repeat-y
: ์ด๋ฏธ์ง๊ฐ ์ธ๋ก๋ก๋ง ๋ฐ๋ณต๋ผ.no-repeat
: ์ด๋ฏธ์ง๋ ๋ฐ๋ณต๋์ง ์๊ณ ํ ๋ฒ๋ง ํ์๋ผ
3.2 background-size ์์ฑ
background-size
์์ฑ์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ ์ดํด. ์ด๋ฏธ์ง๋ฅผ ์์์ ๋ง๊ฒ ํฌ๊ธฐ ์กฐ์ ํ ์ ์๋๋ก ํด์ค.
๊ฐ๋ค:
auto
: ์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ์๋์ผ๋ก ๊ฒฐ์ ๋ผ (๊ธฐ๋ณธ๊ฐ)cover
: ์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์๋ฅผ ์์ ํ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ ํดcontain
: ์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์์ ์์ ํ ๋ง๋๋ก ํฌ๊ธฐ ์กฐ์ ํด- ์ ๋๊ฐ: ์๋ฅผ ๋ค์ด, 100px 50px๋ ์ด๋ฏธ์ง์ ๊ฐ๋ก์ ์ธ๋ก๋ฅผ ํฝ์ ๋จ์๋ก ์ง์ ํด
- ๋ฐฑ๋ถ์จ ๊ฐ: ์๋ฅผ ๋ค์ด, 50% 50%๋ ์์ ํฌ๊ธฐ์ ๋ฐฑ๋ถ์จ๋ก ์ด๋ฏธ์ง์ ๊ฐ๋ก์ ์ธ๋ก๋ฅผ ์ง์ ํด
1. ๊ธฐ๋ณธ ํฌ๊ธฐ (auto):
์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ์๋์ผ๋ก ๊ฒฐ์ ๋ผ (๊ธฐ๋ณธ๊ฐ).
.size-auto {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/50');
background-size: auto;
border: 1px solid #000;
}
<div class="size-auto">๊ธฐ๋ณธ ํฌ๊ธฐ (auto)</div>
2. cover:
์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์๋ฅผ ์์ ํ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ ํด.
.size-cover {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/150');
background-size: cover;
border: 1px solid #000;
}
<div class="size-cover">์์๋ฅผ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ (cover)</div>
3. contain:
์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์์ ์์ ํ ๋ง๋๋ก ํฌ๊ธฐ ์กฐ์ ํด.
.size-contain {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/150');
background-size: contain;
border: 1px solid #000;
}
<div class="size-contain">์์ ํ ๋ง๋๋ก ํฌ๊ธฐ ์กฐ์ (contain)</div>
4. ์ ๋๊ฐ:
์๋ฅผ ๋ค์ด, 100px 50px์ ์ด๋ฏธ์ง์ ๊ฐ๋ก์ ์ธ๋ก๋ฅผ ํฝ์ ๋จ์๋ก ์ง์ ํด.
.size-pixels {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/150');
background-size: 100px 50px;
border: 1px solid #000;
}
<div class="size-pixels">ํฝ์
๋จ์ ํฌ๊ธฐ (100px 50px)</div>
5. ๋ฐฑ๋ถ์จ ๊ฐ:
์๋ฅผ ๋ค์ด, 50% 50%๋ ์์ ํฌ๊ธฐ์ ๋ฐฑ๋ถ์จ๋ก ์ด๋ฏธ์ง์ ๊ฐ๋ก์ ์ธ๋ก๋ฅผ ์ง์ ํด.
.size-percent {
width: 200px;
height: 200px;
background-image: url('https://via.placeholder.com/150');
background-size: 50% 50%;
border: 1px solid #000;
}
<div class="size-percent">๋ฐฑ๋ถ์จ ํฌ๊ธฐ (50% 50%)</div>
์ฝ๋ ์ค๋ช :
.size-auto
: ์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ์๋์ผ๋ก ๊ฒฐ์ ๋ผ.size-cover
: ์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์๋ฅผ ์์ ํ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ ํด. ์ด๋ฏธ์ง ์ผ๋ถ๊ฐ ์๋ฆด ์๋ ์์ด.size-contain
: ์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์์ ์์ ํ ๋ง๋๋ก ํฌ๊ธฐ ์กฐ์ ํด. ์ด๋ฏธ์ง๋ ์์ ํ ๋ณด์ด์ง๋ง ๋น ์์ญ์ด ์์ ์ ์์ด.size-pixels
: ์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ํฝ์ ๋จ์๋ก ์ง์ ๋ผ (๊ฐ๋ก 100px, ์ธ๋ก 50px).size-percent
: ์ด๋ฏธ์ง์ ํฌ๊ธฐ๊ฐ ์์ ํฌ๊ธฐ์ ๋ฐฑ๋ถ์จ๋ก ์ง์ ๋ผ (๊ฐ๋ก 50%, ์ธ๋ก 50%)
3.3 background-repeat์ background-size์ ์กฐํฉ
background-repeat
์ background-size
์์ฑ์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ์ํ๋ ํ์ ํจ๊ณผ๋ฅผ ์ป๊ธฐ ์ํด ํจ๊ป ์์ฃผ ์ฌ์ฉ๋ผ.
์ฌ์ฉ ์์:
.combined {
width: 300px;
height: 300px;
background-image: url('https://via.placeholder.com/150');
background-repeat: no-repeat;
background-size: cover;
border: 1px solid #000;
}
<body>
<div class="combined">๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ๋ฐ๋ณต๋์ง ์๊ณ ์์๋ฅผ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ </div>
</body>
์ฝ๋ ์ค๋ช :
background-repeat: no-repeat;
: ์ด๋ฏธ์ง๊ฐ ๋ฐ๋ณต๋์ง ์์background-size: cover;
: ์ด๋ฏธ์ง๋ฅผ ๋น์จ์ ์ ์งํ๋ฉด์ ์์๋ฅผ ์์ ํ ๋ฎ๋๋ก ํฌ๊ธฐ ์กฐ์ ํด. ์ด๋ฏธ์ง ์ผ๋ถ๊ฐ ์๋ฆด ์๋ ์์ด
GO TO FULL VERSION