Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

HTML được hiển thị là cấu trúc HTML tồn tại trong trình duyệt máy khách sau khi tải một trang đã hoàn thành hoàn toàn, bao gồm các quy trình thao tác với HTML ban đầu được gửi từ máy chủ. Cho đến gần đây, việc kết xuất HTML là rất quan trọng đối với SEO kỹ thuật nhưng với sự giới thiệu gần đây của một số công cụ & báo cáo có giá trị của Google, điều này đã giảm tầm quan trọng - xem bài viết của chúng tôi phân tích dữ liệu có cấu trúc của bạn để có kết quả/đoạn trích phong phú để biết các phương pháp chính xác và hiệu quả hơn.

Tại sao sử dụng HTML kết xuất?

Khách hàng của BigC Commerce

Ứng dụng SEO Rich Snippet của chúng tôi sẽ giải quyết tất cả các vấn đề về dữ liệu và đoạn trích có cấu trúc của bạn cho bạn.

Điều quan trọng là kiểm tra dữ liệu có cấu trúc của bạn vì Google sẽ thấy nó. Thông thường JavaScript sau tải được sử dụng để thao tác dữ liệu HTML & có cấu trúc, vì vậy chỉ cần nhập URL vào công cụ kiểm tra dữ liệu có cấu trúc (SDTT) (không thực thi JavaScript) hoặc sử dụng phiên bản "Xem nguồn" của HTML sẽ không phản ánh Google sẽ thấy gì. Sử dụng phiên bản trình duyệt của HTML (được gọi là HTML được kết xuất) sẽ bao gồm các sửa đổi JavaScript và là cách tốt nhất để xác định trạng thái dữ liệu có cấu trúc của bạn.Rendered HTML) will include JavaScript modifications and is the best way to determine the status of your Structured Data.

Làm thế nào để có được HTML được kết xuất

Có một vài cách để có được HTML được hiển thị mỗi mức độ chính xác và khó khăn khác nhau. Chúng tôi sẽ xếp hạng chúng theo thứ tự độ chính xác:

Công cụ kiểm tra URL của Google Search Console

Không có gì chính xác hơn HTML mà Google đang sử dụng để lập chỉ mục trang của bạn. Bảng điều khiển tìm kiếm của Google cho phép bạn truy cập vào bản sao được lưu trữ mà nó hiện đang sử dụng thông qua kiểm tra URL-> Xem trang Crawled Trang-> HTML. Bạn cũng có thể yêu cầu kiểm tra URL trực tiếp bằng cách nhấp vào nút "Kiểm tra URL trực tiếp". Bài kiểm tra trực tiếp không chỉ cung cấp HTML được hiển thị như Google sẽ thấy nó nếu được thu thập dữ liệu mà còn cho phép bạn xem ảnh chụp màn hình của trang như Google nhìn thấy nó. Hạn chế của kỹ thuật này là nó khá chậm và yêu cầu truy cập vào GSC.URL Inspection->View Crawled Page->HTML. You can also request to test a live URL by clicking the "Test Live URL" button. The live test not only delivers the rendered HTML as Google would see it if crawled but also allows you to see a screenshot of the page as Google sees it. The drawback of this technique is it is fairly slow and requires access to the GSC.

Bài kiểm tra thân thiện với thiết bị di động của Google

Một công cụ có giá trị khác có khả năng tương tự như cơ sở "URL trực tiếp" của bảng điều khiển tìm kiếm Google nhưng không cần truy cập vào bảng điều khiển tìm kiếm của Google. Để truy cập HTML được kết xuất, chỉ cần nhập URL và nhấp vào "Kiểm tra URL", sau đó nhấp vào tab HTML. Lưu ý Công cụ này chỉ có thể kiểm tra cho HTML hiện tại, không phải những gì có trong chỉ mục (như GSC có thể)."Test Live URL" facility of Google Search Console but without needing access to Google Search Console. To access the rendered HTML, just enter a URL and click "Test URL", then click the HTML tab. Note this tool can only test for the current HTML, not what is in the index (like GSC can).

Bài kiểm tra kết quả phong phú của Google

Đây là công cụ ưa thích của chúng tôi để khám phá dữ liệu có cấu trúc. Nó rất giống với thử nghiệm thân thiện với Google trên thiết bị di động nhưng được sử dụng để phân tích kết quả phong phú [cùng một liên kết]. Khi bạn đã nhập một URL, nhấp vào văn bản "Xem HTML" để xem đầu ra."View Rendered HTML" text to see the output.

Google Chrome

Với thông báo gần đây về một GoogleBOT thường xanh, phương pháp này đã được cải thiện về độ chính xác và có lợi ích là không phải rời khỏi trình duyệt để có được HTML được hiển thị khiến nó trở thành phương pháp nhanh nhất. Để có được HTML được hiển thị từ trình duyệt Chrome, hãy làm theo các bước sau:

  1. Nhấn F12 hoặc Nhấp chuột phải-> Kiểm tra cửa sổ Mở Công cụ phát triển trong trình duyệt của bạn
  2. Nhấp vào trên HTML Phần tử & Sao chép (Ctrl+C hoặc Nhấp chuột phải-> Copy-> Outerhtml)

Tạo: Thứ Bảy, ngày 25 tháng 5 năm 2019, sửa đổi lần cuối: Thứ Bảy, ngày 25 tháng 5 năm 2019Saturday, May 25, 2019, Last Modified: Saturday, May 25, 2019

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Biên tập viên Lưu ý: Bài viết này đã được xem xét và cập nhật vào tháng 6 năm 2021.This article was reviewed and updated in June 2021.

Mục đích của bài viết này là để giải thích, một cách rất đơn giản, các bước mà trình duyệt của bạn thực hiện để chuyển đổi HTML, CSS và JavaScript thành một trang web hoạt động mà bạn có thể tương tác. Biết quy trình mà trình duyệt của bạn cần để đưa các trang web vào cuộc sống sẽ trao quyền cho bạn tối ưu hóa các ứng dụng web của bạn để có tốc độ và hiệu suất nhanh hơn.

Bắt đầu nào.

Tổng quan về cách các trình duyệt hiển thị các trang web

Làm thế nào chính xác để trình duyệt hiển thị các trang web? Tôi sẽ giải mã quá trình trong thời gian ngắn, nhưng trước tiên, điều quan trọng là phải tóm tắt lại một số điều cơ bản.

Trình duyệt web là một phần mềm tải các tệp từ máy chủ từ xa (hoặc có lẽ là đĩa cục bộ) và hiển thị chúng cho bạn - cho phép tương tác người dùng. Tôi biết bạn biết trình duyệt là gì 🙂

Tuy nhiên, trong một trình duyệt, có một phần mềm tìm ra những gì cần hiển thị cho bạn dựa trên các tệp mà nó nhận được. Đây được gọi là động cơ trình duyệt.

Công cụ trình duyệt là một thành phần phần mềm cốt lõi của mọi trình duyệt chính và các nhà sản xuất trình duyệt khác nhau gọi động cơ của họ bằng các tên khác nhau. Động cơ trình duyệt cho Firefox được gọi là Gecko và Chrome, được gọi là Blink, đây là một cái nĩa của Webkit.

Bạn có thể xem xét so sánh các công cụ trình duyệt khác nhau nếu điều đó khiến bạn quan tâm. Hãy để cho những cái tên làm bạn bối rối - chúng chỉ là tên.

Đối với mục đích minh họa, hãy để giả sử chúng ta có một động cơ trình duyệt phổ quát. Động cơ trình duyệt này sẽ được biểu diễn bằng đồ họa, như được thấy dưới đây. Trong bài viết này, tôi sử dụng trình duyệt của Trình duyệt và động cơ Trình duyệt có thể thay thế cho nhau. Hãy để điều đó làm bạn bối rối; Điều quan trọng là bạn biết công cụ trình duyệt là phần mềm chính chịu trách nhiệm cho những gì chúng tôi đang thảo luận.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

In this article, I use “browser” and “browser engine” interchangeably. Don’t let that confuse you; what’s important is that you know the browser engine is the key software responsible for what we’re discussing.

Gửi và nhận thông tin đến trình duyệt

Đây không phải là một lớp mạng khoa học máy tính, nhưng bạn có thể nhớ rằng dữ liệu được gửi qua Internet khi các gói có kích thước bằng byte.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Điểm tôi cố gắng đưa ra là khi bạn viết một số HTML, CSS và JS và cố gắng mở tệp HTML trong trình duyệt của bạn, trình duyệt đọc các byte HTML thô từ đĩa cứng (hoặc mạng) của bạn.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Có cái đó? Trình duyệt đọc các byte dữ liệu thô và không phải là ký tự thực tế của mã bạn đã viết. Tiếp tục nào.

Trình duyệt nhận được byte dữ liệu, nhưng nó có thể thực sự làm bất cứ điều gì với nó; Các byte dữ liệu thô phải được chuyển đổi thành một biểu mẫu mà nó hiểu. Đây là bước đầu tiên.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Từ các byte thô của HTML đến DOM

Những gì đối tượng Trình duyệt cần làm việc là đối tượng mô hình đối tượng tài liệu (DOM). Vì vậy, đối tượng DOM có nguồn gốc như thế nào? Vâng, khá đơn giản.

Đầu tiên, các byte dữ liệu thô được chuyển đổi thành ký tự.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Bạn có thể thấy điều này với các ký tự của mã bạn đã viết. Chuyển đổi này được thực hiện dựa trên mã hóa ký tự của tệp HTML.

Tại thời điểm này, trình duyệt đã chuyển từ các byte dữ liệu thô vào các ký tự thực tế trong tệp. Các nhân vật là tuyệt vời, nhưng họ không phải là kết quả cuối cùng. Những nhân vật này được phân tích nhanh hơn vào một thứ gọi là mã thông báo.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Vì vậy, những mã thông báo này là gì?

Một loạt các ký tự trong tệp văn bản không làm công cụ trình duyệt rất nhiều. Nếu không có quy trình mã thông báo này, loạt các ký tự sẽ dẫn đến một loạt các văn bản vô nghĩa, tức là, mã HTML - và điều đó không tạo ra một trang web thực tế.

Khi bạn lưu một tệp với tiện ích mở rộng .html, bạn báo hiệu đến công cụ trình duyệt để giải thích tệp dưới dạng tài liệu HTML. Cách trình duyệt diễn giải tệp này bằng cách phân tích cú pháp đầu tiên. Trong quy trình phân tích cú pháp và đặc biệt là trong quá trình mã thông báo, mọi thẻ HTML bắt đầu và kết thúc trong tệp được tính đến.


Nhiều bài viết tuyệt vời hơn từ Logrocket:

  • Đừng bỏ lỡ một khoảnh khắc với bản phát lại, một bản tin được quản lý từ Logrocket
  • Tìm hiểu cách Galileo của Logrocket cắt giảm tiếng ồn để chủ động giải quyết các vấn đề trong ứng dụng của bạn
  • Sử dụng React's UsEffect để tối ưu hóa hiệu suất của ứng dụng của bạn
  • Chuyển đổi giữa nhiều phiên bản của nút
  • Khám phá cách làm động ứng dụng ứng dụng React của bạn với Animxyz
  • Khám phá Tauri, một khuôn khổ mới để xây dựng các nhị phân
  • So sánh NestJS so với Express.js

Trình phân tích cú pháp hiểu từng chuỗi trong giá đỡ góc (ví dụ:





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
0,




    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
1) và hiểu tập hợp các quy tắc áp dụng cho từng quy tắc. Ví dụ, một mã thông báo đại diện cho thẻ neo sẽ có các thuộc tính khác nhau từ một thẻ đại diện cho một mã thông báo đoạn văn.

Về mặt khái niệm, bạn có thể thấy một mã thông báo là một số loại cấu trúc dữ liệu chứa thông tin về một thẻ HTML nhất định. Về cơ bản, một tệp HTML được chia thành các đơn vị phân tích cú pháp nhỏ được gọi là mã thông báo. Đây là cách trình duyệt bắt đầu hiểu những gì bạn đã viết.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Mã thông báo là tuyệt vời, nhưng chúng cũng không phải là kết quả cuối cùng của chúng tôi. Sau khi quá trình mã hóa được thực hiện, các mã thông báo sau đó được chuyển đổi thành các nút. Bạn có thể nghĩ về các nút như các đối tượng riêng biệt với các thuộc tính cụ thể. Trong thực tế, một cách tốt hơn để giải thích điều này là xem một nút là một thực thể riêng biệt trong cây đối tượng tài liệu.

Các nút là tuyệt vời, nhưng chúng vẫn không phải là kết quả cuối cùng.

Bây giờ, đây là bit cuối cùng. Khi tạo các nút này, các nút sau đó được liên kết trong cấu trúc dữ liệu cây được gọi là DOM. DOM thiết lập các mối quan hệ cha mẹ và con cái, các mối quan hệ anh chị em liền kề, v.v ... Mối quan hệ giữa mọi nút được thiết lập trong đối tượng DOM này.

Bây giờ, đây là một cái gì đó chúng ta có thể làm việc với.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Nếu bạn nhớ từ Web Design 101, bạn sẽ không mở tệp CSS hoặc JS trong trình duyệt để xem trang web. Không - Bạn mở tệp HTML, hầu hết các lần trong mẫu





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
2. Đây chính xác là lý do tại sao bạn làm như vậy: Trình duyệt phải thông qua việc chuyển đổi các byte thô của dữ liệu HTML thành DOM trước khi bất cứ điều gì có thể xảy ra.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Tùy thuộc vào mức độ lớn của tệp HTML, quy trình xây dựng DOM có thể mất một thời gian. Cho dù nhỏ đến đâu, nó cũng mất một thời gian, bất kể kích thước tệp.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Nhưng chờ đã - những gì về việc tìm nạp CSS?

DOM đã được tạo ra. Tuyệt quá.

Một tệp HTML điển hình với một số CSS sẽ có bảng kiểu được liên kết như hình dưới đây:




    


    

Mặc dù trình duyệt nhận được các byte dữ liệu thô và khởi động quy trình xây dựng DOM, nhưng nó cũng sẽ đưa ra yêu cầu tìm nạp bảng kiểu





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
3 được liên kết. Ngay sau đó, trình duyệt bắt đầu phân tích HTML, khi tìm thẻ




    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
4 vào tệp CSS, nó đồng thời đưa ra yêu cầu tìm kiếm điều đó.

Như bạn có thể đoán, trình duyệt cũng nhận được các byte dữ liệu CSS thô, cho dù từ Internet hay đĩa cục bộ của bạn. Nhưng chính xác thì những gì được thực hiện với các byte thô của dữ liệu CSS?

Từ các byte thô của CSS đến CSSOM

Bạn thấy, một quá trình tương tự với các byte HTML thô cũng được bắt đầu khi trình duyệt nhận được byte RAW của CSS.

Nói cách khác, các byte dữ liệu thô được chuyển đổi thành các ký tự, sau đó được mã hóa. Các nút cũng được hình thành, và cuối cùng, một cấu trúc cây được hình thành.

Cấu trúc cây là gì? Chà, hầu hết mọi người đều biết có một thứ gì đó gọi là Dom. Theo cách tương tự, cũng có một cấu trúc cây CSS được gọi là mô hình đối tượng CSS (CSSOM).

Bạn thấy đấy, trình duyệt có thể hoạt động với các byte thô của HTML hoặc CSS. Điều này phải được chuyển đổi thành một hình thức mà nó nhận ra - và đó là các cấu trúc cây này.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

CSS có một cái gì đó gọi là Cascade. Cascade là cách trình duyệt xác định những kiểu được áp dụng cho một phần tử. Bởi vì các kiểu ảnh hưởng đến một yếu tố có thể đến từ một phần tử cha (nghĩa là, thông qua kế thừa) hoặc đã được đặt trên chính phần tử, cấu trúc cây CSSOM trở nên quan trọng.

Tại sao? Điều này là do trình duyệt phải đệ quy qua cấu trúc cây CSS và xác định các kiểu ảnh hưởng đến một yếu tố cụ thể.

Tất cả đều tốt và tốt. Trình duyệt có các đối tượng DOM và CSSOM. Chúng ta có thể có một cái gì đó được hiển thị trên màn hình bây giờ?

Cây kết xuất

Những gì chúng ta có ngay bây giờ là hai cấu trúc cây độc lập mà don dường như có một mục tiêu chung.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
DOM và CSSOM là các cấu trúc cây độc lập.

Các cấu trúc cây DOM và CSSOM là hai cấu trúc độc lập. DOM chứa tất cả các thông tin về các mối quan hệ của phần tử HTML, trong khi CSSOM chứa thông tin về cách các phần tử được tạo kiểu.

OK, trình duyệt hiện kết hợp các cây DOM và CSSOM thành một thứ gọi là cây kết xuất.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
DOM + CSSOM = Cây kết xuất

Cây kết xuất chứa thông tin về tất cả nội dung DOM có thể nhìn thấy trên trang và tất cả các thông tin CSSOM cần thiết cho các nút khác nhau. Lưu ý rằng nếu một phần tử đã bị CSS ẩn (ví dụ: bằng cách sử dụng





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
5), nút sẽ không được biểu diễn trong cây kết xuất.

Phần tử ẩn sẽ có mặt trong DOM nhưng không phải là cây kết xuất. Điều này là do cây kết xuất kết hợp thông tin từ cả DOM và CSSOM, vì vậy nó biết không bao gồm một phần tử ẩn trong cây.

Với cây kết xuất được xây dựng, trình duyệt chuyển sang bước tiếp theo: Bố cục!

Đặt cây kết xuất

Với cây kết xuất được xây dựng, bước tiếp theo là thực hiện bố cục. Ngay bây giờ, chúng tôi có nội dung và thông tin phong cách của tất cả các nội dung hiển thị trên màn hình, nhưng chúng tôi thực sự đã hiển thị bất cứ điều gì lên màn hình.

Vâng, trước tiên, trình duyệt phải tính toán kích thước và vị trí chính xác của mỗi đối tượng trên trang. Nó giống như truyền tải nội dung và thông tin phong cách của tất cả các yếu tố được kết xuất trên trang cho một nhà toán học tài năng. Nhà toán học này sau đó tìm ra vị trí và kích thước chính xác của từng phần tử với chế độ xem trình duyệt.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Tuyệt vời, phải không?

Bước bố cục này (mà đôi khi bạn sẽ nghe thấy được gọi là bước phản xạ của người dùng) xem xét nội dung và phong cách nhận được từ DOM và CSSOM và thực hiện tất cả các tính toán bố cục cần thiết.

Để cho nghệ sĩ ra ngoài

Với thông tin về các vị trí chính xác của từng phần tử hiện được tính toán, tất cả những gì còn lại là để sơn sơn các phần tử lên màn hình. Hãy suy nghĩ về nó: Chúng tôi đã có tất cả thông tin cần thiết để thực sự hiển thị các yếu tố trên màn hình. Hãy để chỉ có thể hiển thị cho người dùng, phải không?

Đúng! Đó chính xác là những gì giai đoạn này là tất cả về. Với thông tin về nội dung (DOM), kiểu (CSSOM) và bố cục chính xác của các phần tử được tính toán, trình duyệt hiện đang sơn nút riêng lẻ trên màn hình. Cuối cùng, các yếu tố hiện được hiển thị lên màn hình!

Kết xuất chặn tài nguyên

Khi bạn nghe thấy việc chặn kết xuất, điều gì đến với tâm trí? Chà, tôi đoán là, một cái gì đó ngăn chặn bức tranh thực tế của các nút trên màn hình.

Nếu bạn nói điều đó, bạn hoàn toàn đúng!

Quy tắc đầu tiên để tối ưu hóa trang web của bạn là nhận được HTML và CSS quan trọng nhất được cung cấp cho khách hàng nhanh nhất có thể. DOM và CSSOM phải được xây dựng trước khi sơn thành công, vì vậy cả HTML và CSS đều là tài nguyên chặn kết xuất.

Vấn đề là, bạn nên nhận HTML và CSS của mình cho máy khách càng sớm càng tốt để tối ưu hóa thời gian để kết xuất đầu tiên của các ứng dụng của bạn.

Nhưng chờ đã - còn JavaScript thì sao?

Một ứng dụng web khá chắc chắn sẽ sử dụng một số JavaScript. Đó là sự cống hiến. Vấn đề của người Viking với JavaScript là bạn có thể sửa đổi nội dung và kiểu dáng của một trang bằng JavaScript. Nhớ lại?

Theo ngụ ý, bạn có thể xóa và thêm các phần tử khỏi cây DOM và bạn cũng có thể sửa đổi các thuộc tính CSSOM của một phần tử thông qua JavaScript.

Điều đó thật tuyệt! Tuy nhiên, nó có giá. Xem xét tài liệu HTML sau:





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Nó là một tài liệu khá đơn giản.

Bảng kiểu





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
6 có một khai báo duy nhất như hình dưới đây:

body {
  background: #8cacea;
}

Và kết quả của điều này là:

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
Một trang HTML cơ bản được hiển thị.

Một văn bản và hình ảnh đơn giản được hiển thị trên màn hình. Từ các giải thích trước, trình duyệt đọc các byte RAW của tệp HTML từ đĩa (hoặc mạng) và biến nó thành ký tự.

Các nhân vật được phân tích nhanh hơn vào mã thông báo. Ngay khi trình phân tích cú pháp đạt đến dòng với





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
7, một yêu cầu được thực hiện để tìm nạp tệp CSS,




    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
6, việc xây dựng DOM vẫn tiếp tục và ngay khi tệp CSS trở lại với một số nội dung, CSSOM Construction bắt đầu.

Điều gì xảy ra với dòng chảy này khi chúng tôi giới thiệu JavaScript? Chà, một trong những điều quan trọng nhất cần nhớ là bất cứ khi nào trình duyệt gặp thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9, việc xây dựng DOM đều bị tạm dừng! Toàn bộ quá trình xây dựng DOM bị tạm dừng cho đến khi tập lệnh hoàn thành thực thi.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Điều này là do JavaScript có thể thay đổi cả DOM và CSSOM. Bởi vì trình duyệt không chắc chắn những gì JavaScript đặc biệt này sẽ làm, nên việc phòng ngừa bằng cách tạm dừng toàn bộ cấu trúc DOM hoàn toàn.

Điều này có thể tệ đến mức nào? Chúng ta hãy có một cái nhìn.

Trong tài liệu HTML cơ bản mà tôi đã chia sẻ trước đó, hãy để giới thiệu thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 với một số JavaScript cơ bản:





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Trong thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9, tôi đã truy cập DOM cho một nút có
body {
  background: #8cacea;
}
2 và
body {
  background: #8cacea;
}
3, sau đó đăng nhập nó vào bảng điều khiển.

Điều này hoạt động tốt, như đã thấy dưới đây:

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
Các hoạt động của DOM đã thành công.

Tuy nhiên, bạn có nhận thấy rằng thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 này được đặt ở dưới cùng của thẻ
body {
  background: #8cacea;
}
5 không? Hãy để đặt nó vào đầu và xem những gì xảy ra:





    
    Medium Article Demo
    
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Khi tôi làm điều này, biến tiêu đề được giải quyết thành

body {
  background: #8cacea;
}
6.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
Hoạt động dom không thành công

Tại sao? Khá đơn giản.

Trong khi trình phân tích cú pháp HTML đang trong quá trình xây dựng DOM, một

body {
  background: #8cacea;
}
7TAG đã được tìm thấy. Tại thời điểm này, thẻ
body {
  background: #8cacea;
}
5 và tất cả nội dung của nó đã không được phân tích cú pháp. Việc xây dựng DOM bị tạm dừng cho đến khi hoàn thành việc thực thi kịch bản:

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
Nơi xây dựng DOM bị dừng lại.

Vào thời điểm





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 đã cố gắng truy cập một nút DOM với
body {
  background: #8cacea;
}
2 của
body {
  background: #8cacea;
}
3, nó đã không tồn tại vì DOM đã không phân tích hoàn thành tài liệu!

Điều này đưa chúng ta đến một điểm quan trọng khác: vị trí của kịch bản của bạn.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Và đó không phải là tất cả. Nếu bạn trích xuất nội tuyến





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 vào một tệp cục bộ bên ngoài, hành vi này là như nhau. Việc xây dựng DOM vẫn bị tạm dừng:





    
    Medium Article Demo
    
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Một lần nữa, đó không phải là tất cả! Điều gì sẽ xảy ra nếu





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
3 này không phải là địa phương nhưng phải được tìm nạp qua internet?





    
    Medium Article Demo
    
    

3, công trình DOM cũng sẽ bị dừng lại cho hàng ngàn mili giây! Đó là một mối quan tâm hiệu suất lớn, và vẫn vậy, đó không phải là tất cả. Hãy nhớ rằng JavaScript cũng có thể truy cập CSSOM và thay đổi nó. Ví dụ: đây là JavaScript hợp lệ:

document.getElementsByTagName("body")[0].style.backgroundColor = "red";

Vì vậy, điều gì xảy ra khi trình phân tích cú pháp gặp thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 nhưng CSSOM chưa sẵn sàng?

Chà, câu trả lời hóa ra là đơn giản: Việc thực hiện JavaScript sẽ bị dừng lại cho đến khi CSSOM sẵn sàng.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Vì vậy, mặc dù việc xây dựng DOM dừng lại cho đến khi gặp phải thẻ





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9 gặp phải, nhưng đó không phải là những gì xảy ra với CSSOM.

Với CSSOM, việc thực thi JS chờ đợi. Không CSSOM, không thực thi JS.

Thuộc tính Async

Theo mặc định, mỗi tập lệnh là trình chặn trình phân tích cú pháp! Việc xây dựng DOM sẽ luôn bị dừng lại.

Có một cách để thay đổi hành vi mặc định này mặc dù.

Nếu bạn thêm từ khóa





    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
7 vào thẻ




    
    Medium Article Demo
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
9, việc xây dựng DOM sẽ không bị dừng lại. Việc xây dựng DOM sẽ được tiếp tục và tập lệnh sẽ được thực thi khi nó được thực hiện tải xuống và sẵn sàng.

Đây là một ví dụ:





    
    Medium Article Demo
    
    



    
    
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Đường dẫn kết xuất quan trọng (CRP)

Toàn bộ thời gian này, chúng tôi đã thảo luận về các bước được thực hiện giữa việc nhận các byte HTML, CSS và JS và biến chúng thành các pixel được hiển thị trên màn hình.

Toàn bộ quá trình này được gọi là đường dẫn kết xuất quan trọng (CRP). Tối ưu hóa trang web của bạn cho hiệu suất là tất cả về tối ưu hóa CRP. Một trang web được tối ưu hóa tốt nên trải qua kết xuất tiến bộ và không có toàn bộ quá trình bị chặn.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Đây là sự khác biệt giữa một ứng dụng web được coi là chậm hoặc nhanh.

Chiến lược tối ưu hóa CRP được suy nghĩ kỹ lưỡng cho phép trình duyệt tải một trang càng nhanh càng tốt bằng cách ưu tiên tài nguyên nào được tải và thứ tự được tải.

Theo dõi cách ứng dụng của bạn hiển thị

Bây giờ bạn đã biết cách kết xuất trình duyệt hoạt động, điều quan trọng là đảm bảo rằng các thành phần và yếu tố trong ứng dụng của bạn đang hiển thị như bạn mong đợi. Nếu bạn quan tâm đến việc theo dõi và theo dõi các vấn đề liên quan đến kết xuất trình duyệt và xem cách người dùng tương tác với các thành phần cụ thể, hãy thử logrocket. https://logrocket.com/signup/

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?
https://logrocket.com/signup/

Logrocket giống như một DVR cho các ứng dụng web, ghi lại mọi thứ xảy ra trên trang web của bạn. Thay vì đoán cách ứng dụng hoặc trang web của bạn đang hiển thị trong các trình duyệt cụ thể, bạn có thể thấy chính xác những gì người dùng trải nghiệm. Với logrocket, bạn có thể hiểu cách người dùng tương tác với các thành phần và bề mặt bất kỳ lỗi nào liên quan đến các yếu tố không hiển thị chính xác.

Ngoài ra, Logrocket ghi lại tất cả các hành động và trạng thái từ các cửa hàng Redux của bạn. LOGROCKETTERS Ứng dụng của bạn để ghi lại các yêu cầu/phản hồi với các tiêu đề + thân. Nó cũng ghi lại HTML và CSS trên trang, tái tạo các video hoàn hảo pixel của các ứng dụng một trang phức tạp nhất. Hiện đại hóa cách bạn gỡ lỗi ứng dụng React của mình - bắt đầu giám sát miễn phí.

Sự kết luận

Đã hiểu những điều cơ bản về cách trình duyệt hiển thị HTML, CSS và JS của bạn, tôi cầu xin bạn dành thời gian để khám phá cách bạn có thể tận dụng kiến ​​thức này trong việc tối ưu hóa các trang của bạn để có tốc độ.

Một nơi tốt để bắt đầu là phần hiệu suất của tài liệu Nguyên tắc cơ bản của Google Web.

Logrocket: Debug Lỗi JavaScript dễ dàng hơn bằng cách hiểu bối cảnh

Mã gỡ lỗi luôn là một nhiệm vụ tẻ nhạt. Nhưng bạn càng hiểu lỗi của mình thì càng dễ dàng sửa chúng.

Logrocket cho phép bạn hiểu các lỗi này theo những cách mới và độc đáo. Giải pháp giám sát frontend của chúng tôi theo dõi sự tham gia của người dùng với các mặt tiền JavaScript của bạn để cung cấp cho bạn khả năng tìm hiểu chính xác những gì người dùng đã làm dẫn đến lỗi.

Hướng dẫn what is used to render html? - cái gì được sử dụng để hiển thị html?

Logrocket Records nhật ký bảng điều khiển, thời gian tải trang, ngăn xếp, yêu cầu/phản hồi mạng chậm với các tiêu đề + thân, siêu dữ liệu trình duyệt và nhật ký tùy chỉnh. Hiểu được tác động của mã JavaScript của bạn sẽ không bao giờ dễ dàng hơn!

Hãy thử nó miễn phí.

HTML được hiển thị như thế nào?

Một trang HTML cơ bản được hiển thị. Một văn bản và hình ảnh đơn giản được hiển thị trên màn hình. Từ các giải thích trước, trình duyệt đọc các byte RAW của tệp HTML từ đĩa (hoặc mạng) và biến nó thành ký tự. Các nhân vật được phân tích nhanh hơn vào mã thông báo.the browser reads raw bytes of the HTML file from the disk (or network) and transforms that into characters. The characters are further parsed into tokens.

Phần mềm nào được sử dụng để hiển thị HTML?

Một trang HTML có thể được đọc và hiển thị bởi một trình duyệt web.Hầu hết các máy tính sẽ liên kết trình duyệt mặc định của bạn với.Tiện ích mở rộng HTML.Trang HTML có thể được mở trực tiếp với trình duyệt mặc định chỉ bằng cách nhấp đúp vào nó.web browser. Most of the computers will associate your default browser with the . html extension. The HTML page can be opened directly with the default browser by just double-clicking it.

Kết xuất HTML là gì?

Kết xuất trang web có nghĩa là gì?Kết xuất một trang web là quá trình biến mã HTML, CSS và JavaScript thành một trang tương tác mà khách truy cập trang web mong đợi sẽ thấy khi nhấp vào liên kết.Mỗi trang web được thiết kế với người dùng cuối.the process of turning HTML, CSS, and JavaScript code into an interactive page that website visitors expect to see when clicking on a link. Every website page is designed with the end user in mind.

Cái nào được sử dụng để đọc và hiển thị một trang HTML?

Trình duyệt web Mục đích của trình duyệt web (Chrome, Edge, Firefox, Safari) là đọc các tài liệu HTML và hiển thị chính xác. The purpose of a web browser (Chrome, Edge, Firefox, Safari) is to read HTML documents and display them correctly.