amp-img 반응형 이미지 만들기 - srcset 속성

2 min read

sreset을 사용하면 뷰포트 너비마다 각각의 이미지를 지정할 수 있습니다. 그런 다음 브라우저는 뷰포트 너비만 한 이미지를 선택하여 사용자의 장치에 가장 적합한 이미지를 제공합니다.

<amp-img src="img/feature.jpg"
         srcset="img/feature-1200.jpg 1200w,
                 img/feature-lrg.jpg 1080w,
                 img/feature-med.jpg 768w,
                 img/feature.jpg 320w"
         width="768"
         height="305"
         layout="responsive"
         alt="Feature image">
</amp-img>

rcset 속성은 대체 이미지를 쉼표로 구분하여 각각의 너비를 적용합니다. 예를 들어 앞의 코드에서 feature-lrg.jpg는 파일 이름이고 1080w는 이 이미지의 너비가 1080 픽셀임을 브라우저에 알립니다. 페이지를 데스크톱 브라우저에서 로드하고 개발자 도구의 네트워크 탭을 확인합니다.

amp-img 반응형 이미지 만들기 - srcset 속성 사용

브라우저 뷰포트의 너비에 따라 실제로 다운로드된 이미지가 표시되어야 합니다. 브라우저 크기를 조정하면 뷰포트 너비에 따라 대체 이미지를 표시하는 것을 볼 수 있습니다.

지금 표시되는 이미지 뿐만 아니라 다른 sreset 이미지에도 layout="responsive"가 적용되고 있습니다. 즉, 브라우저에서 어떤 이미지를 선택하든지 AMP는 이미지의 크기를 조정하여 뷰포트를 채웁니다. 따라서 모든 뷰포트에서 적절한 크기의 이미지를 표시할 수 있습니다.


heightssizes 속성을 사용하면 반응형 이미지를 조금 더 조정할 수 있습니다. sizes 속성을 사용하면 미디어 쿼리를 사용하여 사용자의 뷰포트 크기에 따라 이미지가 표시되어야 하는 범위를 설정할 수 있습니다. 예를 들어 다음과 같이 사용합니다.

sizes="(min-width: 640px) 50vw, 100vw"

즉, 화면 크기가 640px 이상인 경우 이미지는 뷰포트 너비의 50%입니다. 640px 미만의 다른 화면 크기의 경우 뷰포트 너비의 100%로 이미지를 표시합니다.

heights 속성은 비슷하지만 너비 대신 이미지 높이에 적용됩니다. 예를 들면 다음과 같습니다.

heights="(min-width: 500px) 200px, 80%"

sizes 또는 heights 속성을 사용하여 너비와 높이를 함께 지정하면 layout 속성은 기본적으로 responsive으로 설정됩니다.

방문해주셔서 감사합니다. 즐거운 하루 되세요!

관심 있을 만한 글

  • 유효성 검사는 AMP 페이지에 문제가 있을 때 알려주며, 페이지의 어느 부분에서 문제가 발생했는지 알 수 있기 때문에 매우 유용합니다. AMP 페이지의 유효성을 검사하지 않으면 AMP 캐시에 포함되지 않습니다. 즉, 클릭함과 동시에 즉시 로드되는 페이지를 만들지 못합니다…
  • Google Accelerated Mobile Pages (Google AMP)는 amp-html을 사용하여 웹 페이지를 경량화하여 구현할 수 있도록 특별히 만들어진 Google의 새로운 오픈 소스 프로젝트입니다. 이 프로젝트의 주요 목표는 AMP 코드를 잘 적용하여 스마트폰, 태블릿 등과 같은 가능한 모…
  • HTML에 대한 기본적인 지식이 있다고 가정하고 간단한 HTML5 페이지를 AMP-HTML로 변환해보겠습니다. 표준 AMP 페이지, 즉 데스크톱 페이지가 없는 독립형 AMP 페이지를 구축하지 않는 한, 일반적으로 전체 HTML 페이지를 AMP-HTML로 변환합니다. …
  • 구글 가속 모바일 페이지(Google Accelerated Mobile Pages, Google AMP)는 구글의 오픈 소스 프로젝트로 amp-html을 사용하여 가벼운 웹 페이지를 빌드합니다. 구글의 새로운 오픈 메인 프로그램인 AMP는 스마트폰과 태블릿같은 가능한 모든 …
  • AMP 맞춤 자바스크립트 오류는 AMP 오류 중 가장 흔한 오류입니다. 맞춤 자바스크립트 오류 발생 원인과 "맞춤 자바스크립트는 허용되지 않습니다." 문제를 해결하는 방법에 대해 알아봅니다. 맞춤 자바스크립트란? AMP 페이지 내에서 허용되지 않는 모든 자바…
  • 구글 검색 결과에서 이 번개 표시는 무엇일까요? 이 번개 표시는 Google의 AMP 프로젝트 로고로, 빠른 모바일 웹 페이지라는 Google 인증 배지 입니다. AMP 프로젝트 로고가 번개 모양인 이유가 있습니다. 실제로 AMP 페이지는 번개처럼 빠르기 때문입니다. …

댓글 쓰기