CSS的流式布局
- 每個塊元素都帶著一個換行
- 每個塊元素從上往下流動颜说,每個內(nèi)聯(lián)元素從左上方往右下方流動
- 只要兩個塊元素的垂直方向的外邊距碰到一起,那么它們就會折疊(使得實(shí)際的間距為兩個元素中最大的那個外邊距值)荆隘;即使元素嵌套的情況也不例外,除非是嵌套的最外層的元素有一個邊框
流式布局之浮動設(shè)置
- 所有的浮動元素都必須要有一個寬度(但是像image這樣默認(rèn)有個寬度的元素就可以不指定)
-
瀏覽器遇到浮動元素時赴背,會按設(shè)置把它浮動到位椰拒,然后從流中刪除該元素,就好像這個元素浮動在頁面之上一樣凰荚,接下來的塊元素會繼續(xù)在原位置填充燃观,就好像沒有這個浮動元素一樣,但是內(nèi)部的內(nèi)聯(lián)元素會考慮浮動元素的邊界浇揩,從而定位時繞過這個浮動元素
- clear屬性可以使得元素流入頁面時仪壮,在這個元素的左右兩邊不允許出現(xiàn)浮動內(nèi)容
凍結(jié)布局和凝膠布局(frozen layouts/Jello layouts)
- 凍結(jié):把body的內(nèi)容再用一層div包裹起來憨颠,然后設(shè)置這個div的寬度胳徽,這樣就能把頁面內(nèi)容固定在這個寬度內(nèi)顯示,而無論瀏覽器如何調(diào)整頁面的寬度大小
- 凝膠:在凍結(jié)的基礎(chǔ)上爽彤,設(shè)置margin-left和margin-right為auto养盗,這樣就能使得內(nèi)容區(qū)居中
定位(position屬性)
- 靜態(tài)定位:static,默認(rèn)設(shè)置适篙,由瀏覽器來決定位置往核,跟流有關(guān)聯(lián),float元素也這種定位的
- 絕對定位:absolute嚷节,使用絕對定位的元素聂儒,會從流中完全刪除,然后按相對于離它最近的父元素來設(shè)置位置硫痰,流中的其他元素會完全忽略該元素的存在衩婚,絕對定位的元素之間通過z-index來確定z軸的位置
- 固定定位:fixed,元素相對與瀏覽器窗口(而不是相對于頁面)來定位
- 相對定位:relative效斑,元素還在流中非春,然后按照指定的偏移量進(jìn)行定位
CSS表格
- 每個單元格包含一個塊元素
- 表格使用div來進(jìn)行組織,并使用display屬性的table、table-row奇昙、table-cell來標(biāo)記表格护侮、行和單元格
- 表格布局和table元素的單元格都有內(nèi)邊距和邊框,但是用border-spacing(邊框間距)取代外邊距储耐,且只能為所有單元格設(shè)置一個共同的間距
HTML5
- 用section來組織相關(guān)的內(nèi)容羊初,article組織獨(dú)立的內(nèi)容,不相關(guān)的內(nèi)容用div來組織
- 很多新增的h5元素更多的是提供更加規(guī)范的語義表達(dá)