摘要:中間左欄右欄清除浮動(dòng)如下圖缺點(diǎn)結(jié)構(gòu)不正確多了一層標(biāo)簽布局左欄中間右欄如下圖缺點(diǎn)兼容性問題參考文章
W3C標(biāo)準(zhǔn)
由萬維網(wǎng)聯(lián)盟制定的一系列標(biāo)準(zhǔn),包括:
結(jié)構(gòu)化標(biāo)準(zhǔn)語言(HTML和XML)
表現(xiàn)標(biāo)準(zhǔn)語言(CSS)
行為標(biāo)準(zhǔn)語言(DOM和ECMAScript)
CSS中的定位機(jī)制在CSS中存在三種定位機(jī)制:
標(biāo)準(zhǔn)文檔流(Normal flow)
浮動(dòng)(Floats)
絕對定位(Absolute positioning)
標(biāo)準(zhǔn)文檔流特點(diǎn)從上到下,從左到右,輸出文檔內(nèi)容
由塊級元素和行級元素組成
塊級元素特點(diǎn)從左到右撐滿頁面,獨(dú)占一行
觸碰到頁面邊緣時(shí),會(huì)自動(dòng)換行
行級元素特點(diǎn)能在同一行內(nèi)顯示
不會(huì)改變HTML文檔結(jié)構(gòu)
注意: 塊級元素和行級元素都是盒子模型
盒子模型盒子模型—網(wǎng)頁布局的基石,由4部分組成
邊框(border)
外邊距(margin)
內(nèi)邊距(padding)
盒子中的內(nèi)容(content)
前三者是盒子模型的特性,最后一點(diǎn)可以理解為盒子模型的功能,可用于盛放網(wǎng)頁內(nèi)容,包括文本、圖片、音頻、視頻等
盒子模型的三維立體結(jié)構(gòu)第一層:border 第二層:內(nèi)容+padding 第三層:背景圖片 第四層:背景顏色 第五層:外邊距
盒子模型尺寸盒子模型尺寸=邊框+外邊距+內(nèi)邊距+盒子中的內(nèi)容尺寸
注意:
標(biāo)準(zhǔn)盒子模型: 寬度= 內(nèi)容的寬度(content)+ border+ padding+ margin
低版本IE盒子模型: 寬度= 內(nèi)容的寬度(content+ border+ padding)+ margin
區(qū)別在于內(nèi)容的寬度是否包含border和padding,可通過設(shè)置box-sizing:border-box(內(nèi)容寬度包含border和padding值)來實(shí)現(xiàn)統(tǒng)一
table 實(shí)現(xiàn)布局最初網(wǎng)頁出現(xiàn)時(shí)使用,DIV布局出現(xiàn)后廢棄
兩欄布局兩欄布局:一欄定寬,一欄自適應(yīng)。這樣子做的好處是定寬的那一欄可以做廣告,自適應(yīng)的可以作為內(nèi)容主體。
實(shí)現(xiàn)方式float+margin
定寬自適應(yīng).left{ width: 200px; height: 600px; background: red; float: left; display: table; text-align: center; line-height: 600px; color: #fff; } .right{ margin-left: 210px; height: 600px; background: yellow; text-align: center; line-height: 600px; }
如下圖:
其他的方法:還可以使用position的absolute,可以使用同樣的效果
三欄布局特點(diǎn):兩邊定寬,然后中間的width是auto的,可以自適應(yīng)內(nèi)容,再加上margin邊距,來進(jìn)行設(shè)定。
float 實(shí)現(xiàn)三欄布局使用左右兩欄使用float屬性,中間欄使用margin屬性進(jìn)行撐開,注意的是html的結(jié)構(gòu)
左欄右欄中間欄.left{ width: 200px;height: 300px; background: yellow; float: left; } .right{ width: 150px; height: 300px; background: green; float: right; } .middle{ height: 300px; background: red; margin-left: 220px; margin-right: 160px; }
如下圖:
缺點(diǎn):
當(dāng)寬度小于左右兩邊寬度之和時(shí),右側(cè)欄會(huì)被擠下去
html的結(jié)構(gòu)不正確
position 定位實(shí)現(xiàn)左右兩欄使用position進(jìn)行定位,中間欄使用margin進(jìn)行定位
左欄中間欄右欄.left{ background: yellow; width: 200px; height: 300px; position: absolute; top: 0; left: 0; } .middle{ height: 300px; margin: 0 220px; background: red; } .right{ height: 300px; width: 200px; position: absolute; top: 0; right: 0; background: green; }
如下圖:
缺點(diǎn):當(dāng)父元素有內(nèi)外邊距時(shí),會(huì)導(dǎo)致中間欄的位置出現(xiàn)偏差
float和BFC配合圣杯布局將middle的寬度設(shè)置為100%,然后將其float設(shè)置為left,其中的main塊設(shè)置margin屬性,然后左邊欄設(shè)置float為left,之后設(shè)置margin為-100%,右欄也設(shè)置為float:left,之后margin-left為自身大小。
.wrapper{ overflow: hidden; //清除浮動(dòng) } .middle{ width: 100%; float: left; } .middle .main{ margin: 0 220px; background: red; } .left{ width: 200px; height: 300px; float: left; background: green; margin-left: -100%; } .right{ width: 200px; height: 300px; float: left; background: yellow; margin-left: -200px; }中間左欄右欄
如下圖:
缺點(diǎn):
結(jié)構(gòu)不正確
多了一層標(biāo)簽
flex 布局.wrapper{ display: flex; } .left{ width: 200px; height: 300px; background: green; } .middle{ width: 100%; background: red; marign: 0 20px; } .right{ width: 200px; height: 3000px; background: yellow; }左欄中間右欄
如下圖:
缺點(diǎn): 兼容性問題
參考文章: https://segmentfault.com/a/11...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/113333.html
摘要:經(jīng)過半年的打磨,正式發(fā)布,主要是新增了一些常用組件,并使用命名,為接下來的微信小程序開發(fā)做好準(zhǔn)備。這兩種方式實(shí)現(xiàn)的瀑布流式布局均支持首屏和網(wǎng)頁窗口大小改變時(shí)的列數(shù)自適應(yīng)。主要是對于標(biāo)準(zhǔn)里的布局方式草案中的布局方式進(jìn)行一些總結(jié)。 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看...
摘要:瀏覽器兼容性網(wǎng)格布局從開始收到支持,微軟在會(huì)更新對網(wǎng)格布局的支持。微軟的瀏覽器和有一種比較舊的實(shí)現(xiàn),所以有不少限制,我們會(huì)簡單介紹新的實(shí)現(xiàn)方式和老的實(shí)現(xiàn)方式之間的區(qū)別,這樣你能知道如何規(guī)避他們。 原文地址:Getting to know CSS Grid Layout 原文作者:Chris Wright 譯者:華翔 校對者:珂珂、干干 翻譯 | CSS網(wǎng)格(CSS Grid)布局入...
摘要:高度模型淺識(shí)為的簡寫,簡稱為塊級格式化上下文,為瀏覽器渲染某一區(qū)域的機(jī)制,中只有和中還增加了和。并非所有的布局都會(huì)在開發(fā)中使用,但是其中也會(huì)涉及一些知識(shí)點(diǎn)。然而在不同的純制作各種圖形純制作各種圖形多圖預(yù)警 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 float 屬性不...
摘要:但是,從字體上來說雪碧圖制作,使用以及相關(guān),圖文。由于采用了編譯,所以能夠保證在瀏覽器不支持標(biāo)準(zhǔn)布局的情況下,回滾到舊版本的,保證移動(dòng)設(shè)備中能呈現(xiàn)出一樣的布局效果。我不想陷入和的紛爭,但是有一件事是確定的極大的提升了移動(dòng)端 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 ...
摘要:但是,從字體上來說雪碧圖制作,使用以及相關(guān),圖文。由于采用了編譯,所以能夠保證在瀏覽器不支持標(biāo)準(zhǔn)布局的情況下,回滾到舊版本的,保證移動(dòng)設(shè)備中能呈現(xiàn)出一樣的布局效果。我不想陷入和的紛爭,但是有一件事是確定的極大的提升了移動(dòng)端 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 ...
閱讀 2609·2021-11-22 15:25
閱讀 1429·2021-11-15 17:59
閱讀 1129·2021-09-29 09:34
閱讀 1535·2021-09-26 09:46
閱讀 3030·2021-09-02 15:40
閱讀 1190·2019-08-30 15:56
閱讀 3282·2019-08-30 15:55
閱讀 693·2019-08-29 17:08