DOCTYPE, lang속성, data- 속성, cookie, script태그 등
chanto11
·2020. 11. 14. 19:49
DOCTYPE이란?
document type이란 뜻이고 DTD(문서 타입 정의)와 항상 관련된다.
DTD: 특정 문서가 어떻게 구성되어야 하는지 정의합니다.
HTML5 표준에 대한 DOCTYPE선언은 <!DOCTYPE html> 입니다.
quirks mode: w3c표준은 아니지만 대부분 브라우저에서 지원하는 기능 DOCTYPE이 올바르지 않으면 켜진다. DOCTYPE없이 페이지가 실행되고있음을 알린다. 그리고 쿼크스 모드에 의해 브라우저가 추측을 통해 DOCTYPE 추측 후 렌더링한다.
여러 언어로 되어 있는 콘테츠의 페이지를 어떻게 제공하나요?
HTML에 **lang**속성을 사용합니다.
사용자의 모국어로 안내 - 사용자가 쉽게 국가/언어를 변경할 수 있도록
텍스트를 포함한 이미지를 사용하는 것은 확작사능한 접근은 아니다.
단어/문장의 길이 제한 - 일부 언어는 다른언어로 작성될 때 더 길어질 수도 있기때문에 그러나 본문이나 댓글에서는 문제가 되지 않습니다.
색상이 어떨게 이해될지에 대해 주의 깊게보세요 - 색상은 언어나 문하에 따라 다르게 인식되기 때문에 적절한 색상을 사용하여 디자인
날짜와 통화 형식 - 날짜는 종종 다르 방식으로 표현됩니다.
data- 속성은 무엇에 좋은가요?
JS 프레임워크가 인기있기 전에, 프론드엔드 개발자는 비표준 속성, Dom 추가 프로퍼티 등의 조작없이, DOM자체에 추가적인 데이터를 저장하기 위해 data-속성을 사용했었습니다. 이는 적절한 속성이나 요소가 없는 페이지나 애플리케이션에 사용자성의 데이터를 비공개로 저장하기 위한 것입니다.
요즘에는, data- 속성을 사용하는 것을 권장하지 않습니다 그 이유중 하나는 사요자가 브라우저의 inspect기능을 사용하여 데이터 속성을 쉽게 수정할 수 있다는 것입니다. 데이터 모델을 JS자체에 더 잘 저장되며, 라이브러리나 프레임워크의 데이터 바인딩을 통해 DOM을 업데이트된 상태로 유지하는 것이 더 낫습니다.
HTML5를 개방형 웹 플랫폼으로 간주할 때, HTML5의 구성 요소는 무엇인가요?
의미 - 콘텐츠를 보다 더 정확하게 설명할 수 있도록 허용합니다.
연결 - 새롭고 혁신적인 방법으로 서버와 통신할 수 있도록 허용합니다.
오프라인과 저장소 - 웹 페이지가 클라이언트 측에서 데이터를 로컬로 저장하여, 오프라인에서보다 효율적으로 작동하도록 허용합니다.
멀티미디어 - 개방형 웹에서 비디오와 오디오를 일급으로 만듭니다.
2D/3D 그래픽과 효과 - 훨씬 다양한 프레젠테이션 옵션을 허용합니다.
성능과 통합 - 하드웨어의 성능 최적화와 대성으로 더 나은 사용을 제공합니다.
장치 접급 - 다양한 입출력 장치의 사용을 허용합니다.
스타일링 -사용자가 더 세련된 테마를 사용하게 합니다.
cookie, sessionStorage, localStorage 사이의 차이점을 설명하세요
- | cookie | localStorage | sessionStorage |
생성자 | 클라이언트나 서버. 서버는 Set-Cookie 헤더를 사용할 수 있습니다 | 클라이언트 | 클라이언트 |
만료 일자 | 수동으로 설정 | 영구적 | 탭을 닫을 때 |
브라우저 세션 전체에서 지속 | 만효 설정 여부에 따라 | O | X |
모든 HTTP 요청과 함께 서버로 보냄 | 쿠키는 Cookie 헤더를 통해 자동 전송됨 | X | X |
용량(도메인당) | 4kb | 5MB | 5MB |
접근성 | 모든 윈도우 | 모든 윈도우 | 같은 탭 |
<script>, <script async>, <script defer> 사이의 차이점을 설명하세요.
<script> - HTML 파싱이 중단되고, 스크립트를 즉시 가져오고 실행되며, 스크립트 실행 후 HTML 파싱이 다시 시작됨. (가급적 HTML 파싱을 방해하지 않게 하여야함)
<script async> - 이 스크립트는 HTML 파싱과 병렬적으로 가져오며, 가능할 때 즉시 실행됩니다 (아마 HTML 파싱이 끝나기 전). 스크립트가 페이지의 다른 스크립트들과 독립적인 경우 async를 사용하세요. 예) analytics.
<script defer> - 이 스크립트는 HTML 파싱과 병렬적으로 가져오지만, 페이지 파싱이 끝나면 실행됩니다. 이 것이 여러개 있는 경우, 각 스크립트는 페이지에 등장한 순서대로 실행됩니다. 스크립트가 완전히 파싱된 DOM에 의존되는 경우 defer 속성은 스크립트를 싱핼하기 전에 HTML이 완전히 파싱되도록 하는데 유용합니다. <body>의 끝부분에 일반 <script>를 두는 것과 별 차이가 없습니다. defer 스크립트는document.write를 포함하면 안됩니다.
프로그래시브 렌더링이 무엇인가요?
프로그레시브 래더링이란 콘텐츠를 가능한 빠르게 표시하기 위해 웹 페이지의 성능을 향상시키는 데 사용되는 기술입니다.
'Web' 카테고리의 다른 글
[웹 보안] CSRF, CORS, XSS, CSP (2) | 2021.05.04 |
---|---|
HTTP Code (1xx~5xx) 주요 코드 살펴보기 (0) | 2021.03.05 |
CSS - position: sticky [scroll 중 더 나은 경험을 주는 방법] (0) | 2021.02.18 |
메타 태그 <meta> (0) | 2021.02.14 |
URL 끝에 / 가 붙는 이유? (0) | 2021.01.20 |