圣杯布局
圣杯布局的特点
借助的是其他非主要元素覆盖了其父元素的padding值所占据的宽度,非主要元素(侧边栏)只是占据了全部容器的padding值部分
优点
- 可优先渲染主要部分
效果
实现方法
- 为main设置左右padding用来给侧边栏预留位置
- main内三个div设置为浮动
- left,right部分通过定位到达相应位置
代码部分
<!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;
}
*{
margin:0;
padding: 0;
}
.header , .footer{
background: gray;
width: 100%;
}
.footer{
clear: both;
}
.main{
height: 200px;
padding: 0 150px 0 200px;
}
.left , .center , .right{
float: left;
}
.center{
width: 100%;
height: 200px;
background-color:lightcoral;
}
.left {
width: 200px;
height: 200px;
background-color: lightblue;
margin-left: -100%;
position: relative;
left: -200px;
}
.right{
width: 150px;
height: 200px;
background-color: lightgreen;
margin-left: -150px;
position: relative;
left: 150px;
}
</style>
<body>
<div class="header">
头部
</div>
<div class="main">
<div class="center">中间</div>
<div class="left">
左边
</div>
<div class="right">
右边
</div>
</div>
<div class="footer">
底部
</div>
</body>
</html>