여러 언어로 되어 있는 컨텐츠의 페이지를 어떻게 제공하는가?
하나의 페이지 내의 내용은 하나의 일관된 언어로만 표시되어야 한다.
HTTP 요청을 서버에 보내면, 대게 요청하는 user agent가 Accept-Language 헤더와 같은 기본 언어 설정에 대한 정보를 보낸다.
그 다음 서버는 이 정보를 사용하여 해당 언어가 제공가능한 경우, 해당 언어 버전의 문서를 반환할 수 있습니다.
반환된 HTML문서는 <html lang='en'>...</html> 과 같이 <html> 태그에 lang 속성을 선언해야 합니다.
그리고 서버에서 백엔드 프레임워크의 도움을 받아 특정 언어로 HTML페이지를 동적으로 생성하여 제공합니다.
언제 html 태그에 lang 속성을 사용하는가?
lang을 사용하는 가장 큰 이유는 웹접근성을 준수하기 위함이다.
lang을 사용할 경우 브라우저 및 접근성 도구 등에 어떤언어로 사용되어있는지 알 수 있게해준다.
검색엔진 최적화에도 많은 도움을 줄 수 있는데, 검색엔진이 크롤링할 경우 어떤 언어인지 확실하게 파악하게 도움을 줄 수 있기 때문이다.
또한 css에 특정 스타일을 적용하기 위한 목적도 있는데,
css에
html {font-family: 폰트1; }
:lang(ko) {font-familiy: 폰트2;}
:lang(en) {font-familiy: 폰트3;}
:lang(ja) {font-familiy: 폰트4;}
를 선언한다면 html의 lang이 한글일때 폰트2, 영어일때 폰트3, 일본어일때 폰트4가 적용되게 할 수 있다.
'개발 > FrontEnd Interview' 카테고리의 다른 글
[Frontend Interview] 왜 css <link>를 <head>내에 선언하고, js <script>를 <body> 직전에 위치시키는 것이 좋은 방법인가? (0) | 2021.01.07 |
---|---|
[Frontend Interview] <script> <script async> <script defer> 의 차이점 (0) | 2021.01.06 |
[Frontend Interview] cookie, sessionStorage, localStorage 들의 차이점은? (0) | 2021.01.06 |
[FrontEnd Interview] html data- 속성은 무엇에 좋은가? (0) | 2021.01.05 |
[FrontEnd Interview] DOCTYPE이란 무엇인가? (0) | 2020.12.31 |