天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

瀏覽器的渲染原理簡介

  看到這個標題大家一定會想到這篇神文《How Browsers Work》,這篇文章把瀏覽器的很多細節講得很細,而且也被翻譯成了中文。為什么我還想寫一篇呢?因為兩個原因,

  1)這篇文章太長了,閱讀成本太大,不能一口氣讀完。

  2)花了大力氣讀了這篇文章后可以了解很多,但似乎對工作沒什么幫助。

  所以,我準備寫下這篇文章來解決上述兩個問題。希望你能在上班途中,或是坐馬桶時就能讀完,并能從中學會一些能用在工作上的東西。

  瀏覽器工作大流程

  廢話少說,先來看個圖:

  從上面這個圖中,我們可以看到那么幾個事:

  1)瀏覽器會解析三個東西:

  • 一個是 HTML/SVG/XHTML,事實上,Webkit 有三個 C++ 的類對應這三類文檔。解析這三種文件會產生一個 DOM Tree。
  • CSS,解析 CSS 會產生 CSS 規則樹。
  • Javascript,腳本,主要是通過 DOM API 和 CSSOM API 來操作 DOM Tree 和 CSS Rule Tree.

  2)解析完成后,瀏覽器引擎會通過 DOM Tree 和 CSS Rule Tree 來構造 Rendering Tree。注意:

  • Rendering Tree 渲染樹并不等同于 DOM 樹,因為一些像 Header 或 display:none 的東西就沒必要放在渲染樹中了。
  • CSS 的 Rule Tree 主要是為了完成匹配并把 CSS Rule 附加上 Rendering Tree 上的每個 Element。也就是 DOM 結點。也就是所謂的 Frame。
  • 然后,計算每個 Frame(也就是每個 Element)的位置,這又叫 layout 和 reflow 過程。

  3)最后通過調用操作系統 Native GUI 的 API 繪制。

  DOM 解析

  HTML 的 DOM Tree 解析如下:

<html><head>  <title>Web page parsing</title></head><body>  <div>  <h1>Web page parsing</h1>  <p>This is an example Web page.</p>  </div></body></html>

it知識庫瀏覽器的渲染原理簡介,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品成人a | 久久久中日AB精品综合 | 欧美激情一区二区三区四区 | 挺进老师的紧窄小肉六电影完整版 | 精品一区二区三区四区五区六区 | 久久久久久天天夜夜天天 | 白丝女仆被啪到深夜漫画 | 新版孕妇bbwbbwbbw | 欧美日韩第一区 | 亚洲日韩精品AV中文字幕 | 色99久久久久高潮综合影院 | 久久一本综合 | 久啪久久全部视频在线 | 成人影院久久久久久影院 | 99国产精品久久人妻 | 玩50岁四川熟女大白屁股直播 | 青青草国产精品 | 91麻豆精品 | 中文字幕久久熟女人妻AV免费 | 老司机亚洲精品影院 | 大地影院日本韩国电影免费观看 | 奶头好翘是不是想要了 | 蜜芽资源高清在线观看 | 伊人久久大香线蕉综合色啪 | 国产亚洲精品欧洲在线视频 | 99久久久A片无码国产精 | 色欲AV久久综合人妻蜜桃 | 久久国产伦子伦精品 | 亚洲精品一二三区-久久 | 久久精品小视频 | 国产精片久久久久久婷婷 | 英国video性精品高清最新 | 精品无人区麻豆乱码1区2 | 电影果冻传媒在线播放 | 国产偷抇久久精品A片蜜臀A | 视频一区二区中文字幕 | 色AV色婷婷97人妻久久久 | 亚洲一区精品伊人久久伊人 | 影音先锋av丝袜天堂 | 亚洲精品久久久久一区二区三 | 美女被C污黄网站免费观看 美女白虎穴 |