이미지 비율 유지 반응형 처리
이미지가 반응형으로 크기가 줄어들 때 가로세로 비율이 깨지는 경우가 많습니다.
특히 배너, 카드 썸네일, 유튜브 영상 임베드에서 자주 발생.
실무에서는 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이 안전.
특히 배너, 카드 썸네일, 유튜브 영상 임베드에서 자주 발생.
실무에서는 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이 안전.
게시판 목록
퍼블리싱강좌
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 298 | CSS |
선택과집중
|
1개월 전 | 147 | |
| 297 | CSS |
선택과집중
|
3개월 전 | 351 | |
| 296 | CSS |
선택과집중
|
3개월 전 | 301 | |
| 295 | CSS |
선택과집중
|
3개월 전 | 278 | |
| 294 | CSS |
선택과집중
|
3개월 전 | 405 | |
| 293 | CSS |
선택과집중
|
4개월 전 | 344 | |
| 292 | CSS |
선택과집중
|
4개월 전 | 270 | |
| 291 | CSS |
선택과집중
|
4개월 전 | 280 | |
| 290 | CSS |
선택과집중
|
4개월 전 | 320 | |
| 289 | CSS |
선택과집중
|
4개월 전 | 296 | |
| 288 | CSS |
선택과집중
|
4개월 전 | 382 | |
| 287 | CSS |
선택과집중
|
5개월 전 | 335 | |
| 286 | CSS |
선택과집중
|
5개월 전 | 335 | |
| 285 | CSS |
선택과집중
|
5개월 전 | 354 | |
| 284 | CSS |
선택과집중
|
5개월 전 | 240 | |
| 283 | CSS |
|
2년 전 | 1512 | |
| 282 | CSS | 2년 전 | 2487 | ||
| 281 | CSS | 4년 전 | 4017 | ||
| 280 | CSS | 4년 전 | 4543 | ||
| 279 | 반응형웹 | 5년 전 | 2974 | ||
| 278 | 반응형웹 | 5년 전 | 2819 | ||
| 277 | 부트스트랩 | 7년 전 | 5016 | ||
| 276 | 부트스트랩 | 7년 전 | 6572 | ||
| 275 | 부트스트랩 | 7년 전 | 4652 | ||
| 274 | 부트스트랩 | 7년 전 | 6684 | ||
| 273 | 부트스트랩 | 7년 전 | 3354 | ||
| 272 | 부트스트랩 | 7년 전 | 3194 | ||
| 271 | 부트스트랩 | 7년 전 | 3695 | ||
| 270 | 부트스트랩 | 7년 전 | 3215 | ||
| 269 | 부트스트랩 | 7년 전 | 3087 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기