CSS ์์ฑ 12. background
โ๏ธ ํด๋น ๊ธ์ ํจ์คํธ์บ ํผ์ค - ํ๋ก ํธ์๋ ๊ฐ๋ฐ ๊ฐ์์์ HTML & CSS, SASS(SCSS) Part์ ๋ฐ์์ ๊ฐ์ฌ๋์ ๊ฐ์์๋ฃ๋ฅผ ์ ๋ฆฌํ ๊ฒ์ ๋๋ค.
background#
์์์ ๋ฐฐ๊ฒฝ์ ์ค์ - ๋จ์ถ ์์ฑ
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| background-color | ๋ฐฐ๊ฒฝ ์์ | transparent |
| background-image | ํ๋ ์ด์์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง | none |
| background-repeat | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ๋ฐ๋ณต | repeat |
| background-position | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ์์น | 0 0 |
| background-attachment | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ์คํฌ๋กค ์ฌ๋ถ(ํน์ฑ) | scroll |
์ฌ์ฉ๋ฒ#
background: ์์ ์ด๋ฏธ์ง๊ฒฝ๋ก ๋ฐ๋ณต ์์น ์คํฌ๋กคํน์ฑ;.box1 {background: red url("../img/image.jpg") no-repeat left top scroll;/* ์์ ์ด๋ฏธ์ง๊ฒฝ๋ก ๋ฐ๋ณต ์์น ์คํฌ๋กคํน์ฑ */}.box2 {background: url("../img/image.jpg") no-repeat right 100px;/* ์ด๋ฏธ์ง๊ฒฝ๋ก ๋ฐ๋ณต ์์น */}.box3 {background: red;/* ์์ */}background-color#
์์์ ๋ฐฐ๊ฒฝ ์์์ ์ง์ - ๊ฐ๋ณ ์์ฑ
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| ์์ | ์์์ ๋ฐฐ๊ฒฝ ์์ | |
| transparent | ํฌ๋ช | transparent |
โ๏ธ ๊ธฐ๋ณธ๊ฐ์ด transparent ์ด๊ธฐ ๋๋ฌธ์ ์์์ ์ฌ์ด์ฆ๋ง ์ค์ ํ ๊ฒฝ์ฐ ๋ณด์ด์ง ์์๋ค.
์์ #
<div></div>div {width: 200px;height: 100px;background-color: tomato;}background-image#
์์์ ๋ฐฐ๊ฒฝ์ ํ๋ ์ด์์ ์ด๋ฏธ์ง๋ฅผ ์ฝ์ - ๊ฐ๋ณ ์์
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| none | ์ด๋ฏธ์ง ์์ | none |
| url("๊ฒฝ๋ก") | ์ด๋ฏธ์ง ๊ฒฝ๋ก(URL) |
์ฌ์ฉ๋ฒ#
background-image: url("๊ฒฝ๋ก");.box {background-image: url("../img/image.jpg");width: 120px;height: 80px;}.box1 {/* ๊ฐ๋ณ ์์ฑ */background-image: url("../img/image1.jpg"),url("../img/image2.jpg"),url("../img/image3.jpg");}.box2 {/* ๋จ์ถ ์์ฑ */background: url("../img/image1.jpg") no-repeat,url("../img/image2.jpg") no-repeat 100px 50px,url("../img/image3.jpg") repeat-x;}โ๏ธ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง ์ฝ์ ์, ์์์ ํฌ๊ธฐ๊ฐ ์ค์ ๋์ด ์์ด์ผ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ๋ณด์ผ ์ ์๋ค.โ๏ธ ํ๋ ์ด์์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ์ฝ์ ํ ๊ฒฝ์ฐ , ๋ก ๊ตฌ๋ถํ๋ค. ๋จผ์ ์์ฑ๋ ์ด๋ฏธ์ง๊ฐ ๋ ์์ ์์ธ๋ค. ์ด๋ฐ โ๋ค์ค ๋ฐฐ๊ฒฝ ์ด๋ฏธ์งโ๋ IE8 ์ดํ ๋ฒ์ ์ ์ฌ์ฉํ ์ ์๋ค.
background-repeat#
๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ๋ฐ๋ณต์ ์ค์ - ๊ฐ๋ณ ์์
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| repeat | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ์์ง, ์ํ์ผ๋ก ๋ฐ๋ณต | repeat |
| repeat-x | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ์ํ์ผ๋ก ๋ฐ๋ณต | |
| repeat-y | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๋ฅผ ์์ง์ผ๋ก ๋ฐ๋ณต | |
| no-repeat | ๋ฐ๋ณต ์์ |
์์ #
<div></div>.box {background-image:url("https://heropy.blog/css/images/logo.png");background-size: 100px;background-repeat: no-repeat;width: 550px;height: 300px;border: 2px dashed lightgray;}background-position#
๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ์์น๋ฅผ ์ค์ - ๊ฐ๋ณ ์์
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| % | ์ผ์ชฝ ์๋จ ๋ชจ์๋ฆฌ๋ 0% 0% , ์ค๋ฅธ์ชฝ ํ๋จ ๋ชจ์๋ฆฌ๋ 100% 100% | 0% 0% |
| ๋ฐฉํฅ | ๋ฐฉํฅ์ ์ ๋ ฅํ์ฌ ์์น ์ค์ top , bottom , left , right , center | |
| ๋จ์ | px , em , cm ๋ฑ ๋จ์๋ก ์ง์ |
์ฌ์ฉ๋ฒ#
๊ฐ์ด ๋ฐฉํฅ์ผ ๊ฒฝ์ฐ
background-position: ๋ฐฉํฅ1 ๋ฐฉํฅ2;๊ฐ์ด๋ฐ์ ์์น์ํฌ ๋๋ center center; ๋ก ํด๋ ๋์ง๋ง center ๋ฅผ ํ๋ฒ๋ง ์ ๋ ฅํด๋๊ฐ๋ฅํ๋ค.
๊ฐ์ด ๋จ์( % , px ๋ฑ)์ผ ๊ฒฝ์ฐ
background-position: X์ถ Y์ถ;โ๏ธ ๊ฐ์ด ๋ฐฉํฅ์ผ ๊ฒฝ์ฐ์๋ ์์๋ฅผ ๋ฐ๊ฟ๋ ์๊ด์ด ์์ง๋ง ๊ฐ์ด ๋จ์์ผ ๊ฒฝ์ฐ์๋ ์์๊ฐ X์ถ, Y์ถ์ผ๋ก ์ ํด์ ธ ์๋ค.
๋จ์์ ๋ฐฉํฅ์ ํผํฉํด์ ์ฌ์ฉํ ๊ฒฝ์ฐ
background-position: X์ถ(left, right, center) Y์ถ(top, bottom, center);โ๏ธ ๋จ์์ ๋ฐฉํฅ์ ํผํฉํด์ ์ฌ์ฉํ ๊ฒฝ์ฐ left , right ์ ๊ฐ์ X์ถ ๋ฐฉํฅ์ ์ฒซ ๋ฒ์งธ๋ก, top , bottom ๊ฐ์ Y์ถ ๋ฐฉํฅ์ ๋ ๋ฒ์งธ๋ก ์์ฑํด์ผ ํ๋ค. center ๋ X์ถ๊ณผ Y์ถ์์น์ ๋ฐ๋ผ ๋์ํ๋ค.
์์ #
<div class="box"></div>.box {width: 550px;height: 300px;border: 2px dashed lightgray;background-image:url("https://heropy.blog/css/images/logo.png");background-size: 100px;background-repeat: no-repeat;background-position: center;}background-attachment#
์์๊ฐ ์คํฌ๋กค๋ ๋ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ์คํฌ๋กค ์ฌ๋ถ(ํน์ฑ) ์ค์ - ๊ฐ๋ณ ์์ฑ
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| scroll | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ์์๋ฅผ ๋ฐ๋ผ์ ๊ฐ์ด ์คํฌ๋กค ๋จ | scroll |
| fixed | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ๋ทฐํฌํธ(viewport)์ ๊ณ ์ ๋์ด, ์์์ ๊ฐ์ด ์คํฌ๋กค๋์ง ์์ | |
| local | ์์ ๋ด ์คํฌ๋กค ์ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ๊ฐ์ด ์คํฌ๋กค ๋จ |
์์ #
fixed
<section class="section1"></section><section class="section2"></section><section class="section3"></section><section class="section4"></section><section class="section5"></section>section {height: 300px;border: 2px dashed lightgray;}.section2 {background-image: url("https://www.istarbucks.co.kr/common/img/main/fav_prod_bg_new.jpg");background-size: auto 100%;background-position: right bottom;background-attachment: fixed;}.section3 {background-image:url("https://www.istarbucks.co.kr/common/img/main/reserve_bg.jpg");background-size: auto 100%;background-position: right bottom;background-attachment: fixed;}local
<div class="container"><div class="for-scroll"></div></div>.container {width: 400px;height: 300px;border: 4px solid red;margin: 50px;overflow: auto;background-image: url("https://heropy.blog/css/images/logo.png");background-size: 50%;background-attachment: local;}.for-scroll {height: 2000px;}์ฌ์ฉ ๋น๋ ๋ฎ์.
background-size#
๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ง์ - ๊ฐ๋ณ ์์ฑ
์์ฑ ๊ฐ#
| ๊ฐ | ์๋ฏธ | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| auto | ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ์๋์ ํฌ๊ธฐ๋ก ํ์๋จ | auto |
| ๋จ์ | - px , em , % ๋ฑ ๋จ์๋ก ์ง์ - width height ํํ๋ก ์ ๋ ฅ ๊ฐ๋ฅ(E.g. 120px 370px )- width ๋ง ์ ๋ ฅํ๋ฉด ๋น์จ์ ๋ง๊ฒ ์ง์ ๋จ(E.g. 120px ) | |
| cover | - ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ํฌ๊ธฐ ๋น์จ์ ์ ์งํ๋ฉฐ, ์์์ ๋ ๋์ ๋๋น์ ๋ง์ถฐ์ง- ์ด๋ฏธ์ง๊ฐ ์๋ฆด ์ ์์ | |
| contain | - ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง์ ํฌ๊ธฐ ๋น์จ์ ์ ์งํ๋ฉฐ, ์์์ ๋ ์งง์ ๋๋น์ ๋ง์ถฐ์ง- ์ด๋ฏธ์ง๊ฐ ์๋ฆฌ์ง ์์ |
์์ #
<div class="box"></div>.box {width: 400px;height: 300px;border: 2px solid red;margin: 50px;background-image:url("https://heropy.blog/css/images/logo.png");/* 500x500 */background-repeat: no-repeat;background-size: contain;}Reference#
ํจ์คํธ์บ ํผ์ค - ํ๋ก ํธ์๋ ๊ฐ๋ฐ ๊ฐ์ - HTML & CSS, SASS(SCSS) Part by ParkYoungWoong