CSS 다중 배경
이 장에서는 하나의 요소에 여러 배경 이미지를 추가하는 방법을 배웁니다.
다음 속성에 대해서도 배우게 됩니다.
background-size
background-origin
background-clip
CSS 다중 배경
CSS를 사용하면 속성을 통해 요소에 대해 여러 배경 이미지를 추가할 수 있습니다
background-image
.
서로 다른 배경 이미지는 쉼표로 구분되고 이미지는 서로 겹쳐지며 첫 번째 이미지가 뷰어에 가장 가깝습니다.
다음 예제에는 두 개의 배경 이미지가 있습니다. 첫 번째 이미지는 꽃(하단 및 오른쪽 정렬)이고 두 번째 이미지는 종이 배경(왼쪽 상단 모서리 정렬)입니다.
예시
#example1 {
background-image: url(img_flwr.gif), url(paper.gif);
background-position: right bottom, left top;
background-repeat: no-repeat, repeat;
}
개별 배경 속성(위 참조) 또는 background
약식 속성을 사용하여 여러 배경 이미지를 지정할 수 있습니다.
다음 예제에서는 background
약식 속성을 사용합니다(위 예제와 동일한 결과).
예시
#example1 {
background: url(img_flwr.gif) right bottom
no-repeat, url(paper.gif) left top repeat;
}
CSS 배경 크기
CSS background-size
속성을 사용하면 배경 이미지의 크기를 지정할 수 있습니다.
크기는 길이, 백분율로 지정하거나 두 키워드(포함 또는 덮개) 중 하나를 사용하여 지정할 수 있습니다.
다음 예제에서는 픽셀을 사용하여 원본 이미지보다 훨씬 작게 배경 이미지의 크기를 조정합니다.
고통을 주셔서 감사합니다
고통 그 자체가 사랑이다
그렇기 때문에 우리의 정상적인 관행이 결과를 이용하기 위해 참는 가장 작은 사람이 오는 것입니다.
코드는 다음과 같습니다.
예시
#div1
{
background: url(img_flower.jpg);
background-size: 100px 80px;
background-repeat: no-repeat;
}
에 대한 다른 두 가지 가능한 값 background-size
은 contain
및 cover
입니다.
키워드 는 contain
배경 이미지를 가능한 한 크게 조정합니다(단, 너비와 높이가 모두 콘텐츠 영역 안에 맞아야 함). 이와 같이 배경 이미지와 배경 위치 지정 영역의 비율에 따라 배경 이미지에 가려지지 않은 일부 영역이 있을 수 있습니다.
cover
키워드는 콘텐츠 영역이 배경 이미지로 완전히 덮이도록 배경 이미지의 크기를 조정합니다(폭과 높이 모두 콘텐츠 영역과 같거나 초과) . 따라서 배경 위치 지정 영역에서 배경 이미지의 일부가 보이지 않을 수 있습니다.
다음 예는 contain
및 의 사용을 보여줍니다 cover
.
예시
#div1
{
background: url(img_flower.jpg);
background-size: contain;
background-repeat: no-repeat;
}
#div2
{
background: url(img_flower.jpg);
background-size: cover;
background-repeat: no-repeat;
}
여러 배경 이미지의 크기 정의
또한 이 background-size
속성은 여러 배경으로 작업할 때 배경 크기에 대해 여러 값을 허용합니다(쉼표로 구분된 목록 사용).
다음 예에는 각 이미지에 대해 서로 다른 background-size 값을 사용하여 세 개의 배경 이미지가 지정되어 있습니다.
예시
#example1 {
background: url(img_tree.gif) left top
no-repeat, url(img_flwr.gif) right bottom no-repeat, url(paper.gif) left top
repeat;
background-size: 50px, 130px, auto;
}
전체 크기 배경 이미지
이제 우리는 항상 전체 브라우저 창을 덮는 웹사이트에 배경 이미지를 갖고 싶습니다.
요구 사항은 다음과 같습니다.
- 전체 페이지를 이미지로 채우기(공백 없음)
- 필요에 따라 이미지 크기 조정
- 페이지 중앙 이미지
- 스크롤바를 일으키지 않음
다음 예제는 수행 방법을 보여줍니다. <html> 요소를 사용하십시오(<html> 요소는 항상 최소한 브라우저 창의 높이입니다). 그런 다음 고정되고 중앙에 배경을 설정합니다. 그런 다음 background-size 속성으로 크기를 조정합니다.
예시
html {
background: url(img_man.jpg) no-repeat
center fixed;
background-size: cover;
}
영웅 이미지
<div>에서 다른 배경 속성을 사용하여 영웅 이미지(텍스트가 있는 큰 이미지)를 만들고 원하는 위치에 배치할 수도 있습니다.
예시
.hero-image {
background: url(img_man.jpg) no-repeat center;
background-size: cover;
height: 500px;
position:
relative;
}
CSS background-origin 속성
CSS background-origin
속성은 배경 이미지의 위치를 지정합니다.
속성은 세 가지 다른 값을 사용합니다.
- border-box - 배경 이미지는 테두리의 왼쪽 상단에서 시작합니다.
- padding-box - (기본값) 배경 이미지는 패딩 가장자리의 왼쪽 상단 모서리에서 시작합니다.
- content-box - 배경 이미지는 콘텐츠의 왼쪽 상단에서 시작합니다.
다음 예제에서는 background-origin
속성을 보여줍니다.
예시
#example1
{
border: 10px solid black;
padding: 35px;
background: url(img_flwr.gif);
background-repeat: no-repeat;
background-origin: content-box;
}
CSS 배경 클립 속성
CSS background-clip
속성은 배경의 페인팅 영역을 지정합니다.
속성은 세 가지 다른 값을 사용합니다.
- border-box - (기본값) 배경이 테두리의 바깥쪽 가장자리에 칠해집니다.
- padding-box - 배경이 패딩의 바깥쪽 가장자리에 칠해집니다.
- content-box - 배경이 콘텐츠 상자 안에 그려집니다.
다음 예제에서는 background-clip
속성을 보여줍니다.
예시
#example1
{
border: 10px dotted black;
padding: 35px;
background: yellow;
background-clip: content-box;
}
CSS 고급 배경 속성
Property | Description |
---|---|
background | A shorthand property for setting all the background properties in one declaration |
background-clip | Specifies the painting area of the background |
background-image | Specifies one or more background images for an element |
background-origin | Specifies where the background image(s) is/are positioned |
background-size | Specifies the size of the background image(s) |