核心實現:中間三欄都得使用浮動再加上relative,而後父元素使用padding空出左欄和右欄的寬度位置,中間元素使用100%寬度,html
這樣左中右就已經在一豎列了,配合浮動使用margin-left(右邊欄right): -100%可讓margin基於自身往左(往右)偏移(必定要在所有都浮動的同級元素使用纔有效),在這裏佈局
經過使用可讓左右邊欄和中間欄進行重合,再使用定位left(right),把邊欄移到基於自身的指定位置就行。調試
核心實現:中間三欄都得使用浮動,中間欄寬度設爲100%嵌套一個子盒子,子盒子用margin撐出兩邊欄的寬度,左邊欄是使用margin-left:-100%使多列變爲一行,右邊欄使用margin-left: -邊欄寬度 實現一行code
附錄: 代碼htm
聖盃 <!DOCTYPE html\> <html lang\="en"\> <head\> <meta charset\="UTF-8"\> <meta name\="viewport" content\="width=device-width, initial-scale=1.0"\> <title\>Document</title\> <style\> body { min-width: 550px; } #container { padding-left: 200px; padding-right: 150px; } #container .column { position: relative; float: left; } #center { width: 100%; } #left { width: 200px; right: 200px; margin-left: \-100%; } #right { width: 150px; margin-right: \-150px; } </style\> </head\> <body\> <div id\="container"\> <div id\="center" class\="column"\>1111</div\> <div id\="left" class\="column"\>222</div\> <div id\="right" class\="column"\>333</div\> </div\> </body\> </html\> 雙飛翼~~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> body { min-width: 500px; } #container { width: 100%; } .column { float: left; } #center { margin-left: 200px; margin-right: 150px; } #left { width: 200px; margin-left: -100% } #right { width: 150px; margin-left: -150px; } </style> </head> <body> <div id="container" class="column"> <div id="center">1111</div> </div> <div id="left" class="column">222</div> <div id="right" class="column">333</div> </body> </html>