이미지 비율 유지 반응형 처리 > 퍼블리싱강좌

퍼블리싱강좌

이미지 비율 유지 반응형 처리 정보

CSS 이미지 비율 유지 반응형 처리

본문

이미지가 반응형으로 크기가 줄어들 때 가로세로 비율이 깨지는 경우가 많습니다.

특히 배너, 카드 썸네일, 유튜브 영상 임베드에서 자주 발생.

실무에서는 aspect-ratio 속성 또는 padding trick을 활용합니다.

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>이미지 비율 유지</title>
<style>
  .wrapper {
    width: 90%;
    max-width: 600px;
    margin: 50px auto;
  }

  .img-box {
    aspect-ratio: 16 / 9; /* 가로 : 세로 비율 */
    overflow: hidden;
    border-radius: 10px;
  }

  .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* 잘리더라도 꽉 채움 */
  }
</style>
</head>
<body>

<div class="wrapper">
  <div class="img-box">
    <img src="https://picsum.photos/id/237/800/450" alt="샘플 이미지">
  </div>
</div>

</body>
</html>

구형 브라우저 호환 방식 (Padding Trick)
.img-box {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 비율 (9 ÷ 16 × 100) */
}
.img-box img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

배경 이미지로 쓸 때는 background-size: cover; background-position: center;로 처리.

썸네일 그리드에서는 이미지 태그보다 background-image가 유지관리 쉽다.

aspect-ratio는 크로스브라우징이 아직 100% 아니니, 레거시 프로젝트에선 padding trick이 안전.
추천
1
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로