圣杯布局是三栏布局: 两边高度固定, 中间栏自适应, 中间栏优先渲染
实现过程
尾部: 清除浮动
容器: bfc
三栏: float:left; positive:relative;height:500px
左右栏: 宽度+背景颜色
左侧挪到上一行前面: margin-left: -100%
右侧往前挪: right: -150px
给容器: pandding-left: 200px; padding-right:150px
具体实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
body{
min-width: 550px;
font-weight: bold;
font-size: 20px;
}
.header,.footer{
background-color: rgba(29,27,27,0.726);;
text-align: center;
height: 60px;
line-height: 60px;
}
.footer{
/*清除浮动*/
clear: both;
}
.middle,.left,.right{
height: 100px;
}
.content{
padding-left: 200px; /*空出left的位置*/
padding-right: 150px; /*空出right的位置*/
overflow: hidden;
}
.content div{
position: relative;
float: left;
text-align: center;
height: 300px;
line-height: 300px;
}
.middle {
width: 100%;
background-color: orange;
}
.left {
width: 200px; /* leftContent width */
right: 200px; /* leftContent width */
margin-left: -100%;
background-color: green;
}
.right {
width: 150px; /* rightContent width */
margin-left: -150px; /* rightContent width */
right: -150px;
background-color: skyblue;
}
</style>
</head>
<body>
<div class="header">header</div>
<div class="content wrapper">
<div class="middle">middle</div>
<div class="left">left</div>
<div class="right">right</div>
</div>
<div class="footer">footer</div>
</body>
</html>
效果展示
![](https://img-blog.csdnimg.cn/img_convert/e589dc34ef3110fc236c8ed1a9283c56.png)