一、单列布局 – 上下固定,中间自适应效果图:
<div class="container"><div class="top">Top</div><div class="main">Main</div><div class="footer">Footer</div>
</div>
1、 使用绝对定位实现
<style>html,body {padding: 0;margin: 0;width: 100%;height: 100%;}.container{position: relative;width: 500px;height: 100%;margin: 0 auto;}.top {position: absolute;top: 0;width: 100%;height: 100px;background-color: red;}.main {position: absolute;top: 100px;bottom: 50px;width: 100%;background-color: green;}.footer {position: absolute;bottom: 0;width: 100%;height: 50px;background-color: blue;}
</style>
2、 使用 flex 实现
<style>html,body {padding: 0;margin: 0;width: 100%;height: 100%;}.container{display: flex;flex-direction: column;width: 500px;height: 100%;margin: 0 auto;}.top,.footer {flex-grow: 0;flex-shrink: 0;}.top {width: 100%;flex-basis: 100px;background-color: red;}.main {flex: 1;width: 100%;background-color: green;}.footer {width: 100%;flex-basis: 50px;background-color: blue;}
</style>
二、两列布局 – 左边固定,右边自适应效果图:
<div class="container"><div class="left">Left</div><div class="right">Right</div>
</div>
1、 使用绝对定位实现```
(1) 左边元素设置为绝对定位,右边使用margin-left
.container {position: relative;width: 1000px;height: 100%;
}
.left {position: absolute;width: 200px;height: 100%;background-color: red;
}
.right {margin-left: 200px;height: 100%;background-color: green;
}
(2) 右边元素设置为绝对定位,将l