1.左側絕對定位法
直接看代碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>CSS兩列布局——第一種方法</title> <style> .left { position: absolute; height: 500px; width: 300px; background: #333; color: #ccc; } .right { height: 500px; background: #ddd; margin-left: 300px; } </style> </head> <body> <div class="left"> 左側設置絕對定位 </div> <div class="right"> 右側左邊距margin-left設為左側的寬度,這是關鍵 </div> </body> </html>
效果如下:

關鍵點在於.left的position:absolute和.right的margin-left:300px;
2.左側浮動法(右側不浮動)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>CSS兩列布局——第二種方法</title> <style> .left { float: left; height: 500px; width: 300px; background: #333; color: #ccc; } .right { overflow: auto; height: 500px; background: #ddd; } </style> </head> <body> <div class="left"> 左側設置左浮動 </div> <div class="right"> 右側設置overflow:auto </div> </body> </html>
效果如下:

關鍵點:左側設置左浮動,右側設置overflow:auto,我也不知道為什么這樣就有效,以后知道了來補充。
3.Flex布局法(建議移動端頁面使用)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>CSS兩列布局——第三種方法,flex布局</title> <style> .wrapper { display: flex; } .left { flex: 0 0 25%; width: 25%; height: 500px; background: #333; color: #ccc; } .right { flex: 1; height: 500px; background: #ddd; } </style> </head> <body class="wrapper"> <div class="left"> flex子元素:固定寬度,可用百分比 </div> <div class="right"> flex子元素:寬度不定,但是flex:1,否則它是隨內容而撐開。 </div> </body> </html>
效果如下:

參考文章:兩列布局——左側寬度固定,右側寬度自適應的兩種方法
