[HTML](https://developer.mozilla.org/zh-CN/docs/Web/HTML) (HyperText Markup Language)稱為超文本標記語言,是一種標識性的語言。它包括一系列標簽,通過這些標簽可以將網絡上的文檔格式統一,使分散的 Internet 資源連接為一個邏輯整體。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字、圖形、動畫、聲音、表格、鏈接等。
**文檔流**(normal flow)也稱“普通流”,指元素排版布局過程中,自動遵守從左往右,從上往下這種流式排列的方式。
當瀏覽器渲染 HTML 文檔時,從頂部開始渲染,為元素分配所需要的空間,每一個塊級元素單獨占一行,行內元素則按照順序被水平渲染直到在當前行遇到了邊界,然后換到下一行的起點繼續渲染。
**脫離文檔流**,指元素從普通的布局排版(普通文檔流)中脫離出來,其他元素在排版布局的時候,會當做沒看到它,但是依然在DOM樹中存在。元素脫離文檔流之后,將不再在文檔流中占據空間,而是處于浮動狀態(可以理解為漂浮在文檔流的上方)。脫離文檔流的常見場景有以下幾種:
* float浮動:使用float脫離文檔流時,雖然其他盒子會無視這個元素,但其他盒子內的文本依然會為這個元素讓出位置,環繞在該元素的周圍。
* position:absolute: 設置為[絕對定位](https://www.w3school.com.cn/css/css_positioning_absolute.asp)的元素框從文檔流完全刪除,并相對于其包含塊定位,包含塊可能是文檔中的另一個元素或者是初始包含塊。
* position:fixed:固定定位相對于瀏覽器窗口進行定位,也就是這個div固定在瀏覽器窗口上了,不論我們怎么拖動滾動條都無法改變它在瀏覽器窗口的位置。