본문 바로가기
프론트엔드/React & React-Native

리액트 React | index.html

by YUNI Heo 2023. 6. 8.
반응형

 

✅ index.html

https://velog.io/@hyerin0930

 

index.html 파일은 초기 HTML 구조를 정의하고, index.js 파일은 리액트 애플리케이션을 초기화하고 컴포넌트를 렌더링 한다. index.html 파일은 웹 브라우저에 직접 로드되며, index.js 파일은 index.html 파일에 의해 호출되어 애플리케이션을 동적으로 렌더링 한다.


<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>React App</title>
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>

 

 

💡 <!DOCTYPE html>

https://www.seobility.net/en/wiki/HTML_Doctype

DOCTYPE 선언은 HTML 문서에서 <html> 태그를 정의하기 전에 웹 브라우저에게 해당 문서가 어떤 HTML 버전으로 작성되었는지를 선언한다. 

  • HTML5는 최신의 웹 표준이며, 구조적인 개선과 새로운 기능을 포함한다.
// HTML5를 사용하는 문서
<!DOCTYPE html>

DOCTYPE 선언은 문서 유형 선언(Doctype declaration)의 약어로, 문서가 따르는 DTD, Document Type Definition를 지정한다. DTD는 해당 HTML 버전의 문법 규칙과 요소들의 유효성을 정의한다.


DOCTYPE 선언이 없거나 잘못된 형식으로 작성된 경우, 웹 브라우저는 호환 모드(compatibility mode)로 작동할 수 있으며, 예상치 않은 렌더링 결과가 발생할 수 있다. 따라서 올바른 DOCTYPE 선언을 사용하여 웹 페이지의 정확한 HTML 버전을 명시하는 것이 중요하다.

 

💡 <html>

https://www.codestates.com/blog/content/html-css-%EA%B8%B0%EC%B4%88

<html> 태그는 HTML 문서의 루트 요소(root element)를 정의한다.


<html> 요소는 DOCTYPE 선언을 제외한 모든 다른 HTML 요소를 포함하기 위한 컨테이너이다. 브라우저에게 해당 문서가 HTML 문서임을 명시하고, 문서의 전체 구조를 정의한다.


https://www.scaler.com/topics/html-lang-attribute/

lang 속성

lang 속성은 웹 페이지의 언어를 선언한다. 

Language Codes 참고 페이지

 

💡 <head>

https://www.gottheknack.com/a_htmlCss/courseDocs/docTree/docTree.html

<head> 태그는 해당 문서에 대한 정보인 메타데이터(meta data)의 집합을 정의한다.

  • 메타데이터(meta data)는 문서에 대한 정보를 제공하는 데이터이다. 웹 브라우저나 검색 엔진 등이 문서를 이해하고 처리하는 데 도움이 되며, 문서의 특성, 구조, 스타일, 검색 엔진 최적화 등에 관련된 정보를 포함한다.

<meta>

<meta> 태그는 <link>, <script>, <style>, <title> 요소와 같은 다른 메타데이터 관련 요소들이 나타낼 수 없는 다양한 종류의 메타데이터(meta data)를 제공한다.

// 문자 인코딩 방식
<meta charset="UTF-8">

// 웹 페이지를 요약한 내용
<meta name="description" content="HTML meta tag page">

// 초기 화면 배율 설정
<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>

<title> 태그는 해당 문서의 제목(title)을 정의한다.

<title> 요소는 브라우저의 제목 표시줄이나 페이지 탭의 제목으로 사용되며, 즐겨찾기 등록 시 해당 페이지에 대한 즐겨찾기 이름으로 사용된다. 또한, 검색 엔진에 의한 검색 결과 페이지에서도 해당 페이지의 제목으로 사용된다.


<link>

<link> 태그는 해당 문서와 외부 소스(external resource) 사이의 관계를 정의하며 주로 외부 스타일 시트(external style sheet)를 연결한다.

 

💡 <body>

<body> 태그는 해당 HTML 문서의 텍스트, 하이퍼링크, 이미지, 리스트 등과 같은 모든 콘텐츠를 포함하는 영역을 정의한다.


<body>
      <div id="root"></div>
</body>

리액트(React)에서 index.html 파일의 <div id="root"></div> 요소는 DOM에 대한 진입점(entry point)이 된다.


https://velog.io/@eliz

리액트(React)는 <div id="root"> 요소를 찾아서 가상 DOM(Virtual DOM)을 생성하고, 컴포넌트 계층 구조를 구성하여 화면에 표시될 UI를 정의한다. 이후변경된 부분만을 실제 DOM(Document Object Model)에 업데이트하여 효율적인 UI 업데이트를 수행한다.

반응형