<picture>
<!--
N(devicePixelRatio)x 기준으로 srcset을 제공한다.
브라우저에서 source tag와 srcset을 지원하지 않으면 img 태그의 src를 인식한다.
-->
<source srcset="URL1 1x, URL2 2x, URL3 3x" />
<img src="URL1" />
</picture>
<picture>
<!-- webp를 지원하지 않는 브라우저를 위해 다른 format도 추가한다. -->
<source type="image/webp" srcset="~~~.webp" />
<source type="image/jpeg" srcset="~~~.jpeg" />
<img src="~~~.jpeg" />
</picture>
<!-- 크롬에서 제공하는 lazy loading -->
<img src="URL" loading="lazy" />
<!-- lazysizes 라이브러리 사용. viewport에 들어올 때 data-src 내용을 src에 추가해준다. -->
<img class="lazyload" data-src="URL" />
link 태그의 rel 속성
css는 render-blocking resources로서 다 처리되기 전에는 브라우저가 페이지를 그리지 않는다.
critical한 css와 non-critical한 css(크롬의 Coverage 탭에서 확인 가능)를 구분해서 처리해야 한다.
비동기 코드를 작성할 경우 로딩, 성공, 에러 세가지의 render 형태를 분리해서 작성한다.