一忿项、DOCTYPE及作用
DTD(document type definition规伐,文檔類型定義)是一系列的語法規(guī)則,用來定義XML或(X)HTML的文檔類型广凸。瀏覽器會使用它來判斷文檔類型典鸡,決定使用何種協(xié)議來解析被廓,以及切換瀏覽器模式
DOCTYPE是用來聲明文檔類型和DTD規(guī)范的,一個主要的用途便是文件的合法性驗證萝玷。如果文件代碼不合法嫁乘,那么瀏覽器解析時便會出一些差錯
HTML 5
<!DOCTYPE html>
HTML 4.01? ? Strict? ? 包含所有HTML元素和屬性,但不包括展示性和棄用元素(如font)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01? ? Transitional? ? 包含所有HTML元素和屬性球碉,包括展示性和棄用的元素
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN "http://www.w3.org/TR/html4/strict.dtd">
二蜓斧、瀏覽器的渲染過程
三、重排Reflow
DOM結(jié)構(gòu)中的各個元素都有自己的盒模型汁尺,這些都需要瀏覽器根據(jù)各種樣式來計算并根據(jù)計算結(jié)果將元素放到它改出現(xiàn)的位置多律,這個過程稱之為Reflow
觸發(fā)Reflow
????增加痴突、刪除、修改DOM節(jié)點
????移動DOM位置
????修改CSS
????Resize窗口辽装,或滾動時
????修改網(wǎng)頁默認(rèn)字體
四帮碰、Repaint
當(dāng)各種盒子的位置拾积、大小以及其他屬性,例如顏色拓巧、字體大小等都確定下來以后斯碌,瀏覽器把這些元素都按照各自特性繪制一遍,于是頁面的內(nèi)容呈現(xiàn)在屏幕上肛度,這個過程稱之為Repaint
觸發(fā)Repaint
DOM改動
CSS改動