블로그 메뉴

    Tonkatsu
    Developer Lee
    Tonkatsu
    전체 방문자
    오늘
    어제
    • 분류 전체보기 (52)
      • Frontend (7)
        • React (3)
        • JavaScript (3)
        • HTML\CSS (1)
        • etc (0)
      • Backend (0)
        • Python\Django (0)
        • etc (0)
      • CS (32)
        • Algorithm\Coding Test (19)
        • Computer Science (8)
        • devops (5)
        • etc (0)
      • Languages (5)
        • Javascript (5)
        • Python (0)
        • etc (0)
      • 비상다반 (3)
      • 학원 (4)

    인기 글

    태그

    • Push
    • 프로그래머스
    • 네트워크
    • DFS
    • merge
    • HTML
    • 리트코드
    • CS
    • Git
    • js
    • leetcode
    • javascript
    • 코딩테스트
    • 자바스크립트
    • 코테
    • CSS
    • 백준
    • 프론트엔드
    • BFS
    • fetch

    최근 댓글

    최근 글

    티스토리

    hELLO · Designed By 정상우.
    Tonkatsu

    Developer Lee

    웹사이트 렌더링은 어떻게 되는가?
    CS/Computer Science

    웹사이트 렌더링은 어떻게 되는가?

    2021. 12. 10. 02:58

     

    웹사이트에 접속하면 HTML, CSS, JS 파일이 전송되고, 그것을 브라우저가 읽어서 우리에게 보기 좋게 만들어 준다.

    그렇다면 그 과정을 상세히 알아보자.

     

    1. Object Model 만들기

    먼저 브라우저가 HTML과 CSS 파일을 받으면 이를 각각 DOM, CSSOM으로 변환한다.

    DOM은 이전에 알아본 것처럼 HTML의 요소들을 트리구조로 만든 것이다.

     

     

    CSSOM은 CSS Object Model로 CSS의 DOM이라고 할 수 있다.

     

    이 때 중요한 것은 DOM과 CSSOM은 서로 독립적인 데이터 구조라는 것이다.

     

    2. 렌더링 트리 생성

    하지만 완전 별개의 DOM과 CSSOM으로는 홈페이지를 보여줄 수 없다.

    따라서 이 별개의 모델을 서로 합쳐줘야 한다.

     

    이때 이둘은 DOM을 기준으로 태그에 맞는 CSSOM의 오브젝트를 가져오는 방식으로 합쳐진다.

     

    3. 레이아웃(reflow) 진행

    이미 CSSOM으로 스타일을 정해줬지만, 이런 스타일은 사용자의 화면 픽셀에 따라 달라질 수 있다.

    따라서 상대적인 값(%같은)들과 화면 크기에 의해 찌그러지는 픽셀들의 크기가 다시 한번 절대적인 픽셀로 정의된다.

     

    4. 페인트(rasterizing) 진행

    이제 모든 요소들의 세부사항이 정해졌으므로 실제 픽셀로 변환하고 화면에 띄우게 된다.

    저작자표시 (새창열림)

    'CS > Computer Science' 카테고리의 다른 글

    CSR과 SSR의 차이  (0) 2022.01.23
    네트워크 1.2 웹 서버의 IP주소를 DNS 서버에 조회한다.  (0) 2021.12.31
    네트워크 1.1 HTTP 리퀘스트 메시지를 작성한다.  (0) 2021.12.27
    OSI 7계층이란?  (0) 2021.11.29
    google.com으로 들어갈 때 발생하는 일  (4) 2021.11.22
      'CS/Computer Science' 카테고리의 다른 글
      • 네트워크 1.2 웹 서버의 IP주소를 DNS 서버에 조회한다.
      • 네트워크 1.1 HTTP 리퀘스트 메시지를 작성한다.
      • OSI 7계층이란?
      • google.com으로 들어갈 때 발생하는 일
      Tonkatsu
      Tonkatsu
      한 번 뿐인 인생 편하게 살고싶지만 그러려면 열심히 살아야 되니까 열심히 살려고 노력은 하지만 편하게 사는 사람

      티스토리툴바