<meta charset="utf-8">
html
문서에 입력된 텍스트를 UTF-8
방식으로 인코딩한다.
한글이나 아랍어 같은 영어 이외의 문자가 문서에 존재한다고 가정하자.
이때 charset
값이 UTF-8
이 아닌 ascii
로 설정되어 있다면
문자 인코딩이 ascii
방식으로 진행되어 영어 이외의 언어는 알아먹을 수 없는 이상한 문자로 변형된다.
참고로, UTF-8
은 문자 데이터 크기가 가변적이며 언어마다 그 크기가 다르다.
<meta name="viewport" content="width=device-width, initial-scale=1">
viewport
는 주소창 아래의 브라우저 영역을 말한다.
스크롤바 영역은 제외한다.
기기 자체의 화면이 작은 경우에는 가상 뷰포트에 먼저 렌더링 후 기기 화면 크기에 맞게 뷰포트를 축소한다.
예를 들어, 모바일 기기 화면의 width
값이 640px
이라면 640px
보다 큰 가상 뷰포트에 렌더링된 후 width 640px
값에 맞게 뷰포트를 축소한다.
이 경우 문제가 발생한다.
미디어 쿼리를 이용하여 반응형 페이지를 제작했다고 가정하자.
위 문제를 해결하기 위해 meta
태그에 viewport
를 지정한다.
width
값은 픽셀이 될 수도 있다.width
값이 device-width
로 적용되어 있다면 뷰포트 크기를 디바이스에 맞춰 렌더링한다.initial-scale=1
은 웹페이지가 처음 렌더링됐을때 줌 확대율이 100퍼가 된다.<next-route-announcer style="position: absolute;">
<div ...>
...
</div>
</next-route-announcer>
Nextjs는 next-route-announcer
태그를 DOM에 삽입하여 경로가 업데이트 되는 것을 추적하고
로딩을 표시하는 컴포넌트는 이 태그 안에 위치하게 된다.
<link rel="preload" as="font" ... />
preload
가 지정된 데이터를 다른 데이터보다 먼저 요청하여 빠르게 로딩하게 된다.
preload
를 사용할때는 as
속성도 같이 지정해줘야한다.