CSS3에서 백그라운드를 처리함에 있어서 추가적인 요소가 있습니다. 바로 contain과 cover 입니다. 이 각각의 의미는 한글로 풀이를 하자면, 원본비율과 중앙비율이라고 말씀드릴 수 있습니다. 현재 티스토리에서 제공하는 티에디션이라고 하는 꾸미기 플랫폼에 보시면 미리보기 썸네일 이미지를 원본비율, 중앙비율, 상단, 하단 등 기준에 맞춰서 보여지게 설정할 수 있는데, 여기에서 쓰이는 원본비율이 바로 contain 이고 중앙비율이 cover 입니다. 말로는 잘 모를 수 있으니 바로 예시를 들어보겠습니다. 먼저 예시에 사용할 이미지를 두개 올리겠습니다.
이렇게 두개를 올렸구요, 이제 이것을 활용해서 contain과 cover의 쓰임을 살펴보겠습니다.
보시면 어떤 차이점이 있는지 확인 가능하실겁니다. 처음에 티에디션 썸네일의 경우를 말씀드렸는데, cover가 중앙비율, contain이 원본비율로 설정이 되는 것 입니다. contain의 경우는 이미지 전체가 보여지도록 설정이 됩니다. 이때 div의 크기에 따라서 이미지가 전체에 꽉 들어차지 못할수도 있습니다. 반면 cover는 div 영역 안에 백그라운드 이미지가 빈 틈 없이 매워지게 하는 가장 효과적인 방법입니다. 하지만 이미지의 일부가 잘리는 단점이 있습니다. 보편적으로 cover는 이미지의 가장 짧은 선분을 기준으로 꽉 찹니다. 왜냐하면 선분이 긴 쪽을 기준으로 한다면 div 영역에 꽉차게 할 수 없기 때문입니다. 한번 직접 여러가지 사이즈의 이미지를 직접 테스트해 보세요. 그러면 감이 딱 오실 것입니다.
개인적으로는 cover 옵션을 많이 사용합니다. 지정해놓은 영역 안에 백그라운드 이미지로서 빈 틈 없이 나오게 만들 수 있기 때문입니다. 물론 이미지 영역 일부가 잘리는 부작용이 있지만 어쩔 수 없지요. 물론 지정한 영역에 이미지를 꽉 채우는 방법은 또 있습니다. 하지만 지정한 영역과 이미지의 비율이 똑같아야 합니다. 만약 둘 중 하나라도 틀린다면 이미지 왜곡이 일어납니다. 끝.