前言
對於 flex 彈性佈局相信大家都有所了解,它是 css3 中的屬性,然而它具有一定的兼容性問題。樓主前幾天面試時遇到了面試官需要設計一個兩列佈局,我當然就說父元素 flex 吧哩吧啦,然而需要用基本的 css2 中的屬性佈局,傻掉了。 。 。
要求:兩個欄位佈局,左邊定寬,右邊自適應
#html 佈局如下
<p id="father"> <p id="left">我是定宽左</p> <p id="right">我是自适应右</p> </p>
1. flex 佈局
#father{ display: flex; } #left{ background: red; height: 200px; width: 200px; } #right{ background: green; height: 200px; flex:1; }
2. css2 一般佈局
<style> #left{ background: red; height: 200px; width: 200px; float:left; } #right{ background: green; height: 200px; margin-left:200px; } </style>
注意:
多列佈局時需要將浮動元素的html 程式碼寫在自適應元素的前面。如以下為三列佈局的程式碼:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> *{ padding: 0; margin: 0; } #p1{ width: 200px; height: 200px; background: red; float:left; } #p2{ margin-left: 200px; margin-right: 200px; height: 200px; background: green; } #p3{ width: 200px; height: 200px; background: red; float:right; } </style> </head> <body> <p id="box"> <p id="p1">我是左定宽</p> <p id="p3">我是中间自适应</p> <p id="p2">我是右定宽</p> </p> </body> </html>
效果如圖:
以上是css2實作兩列三列佈局的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!