<html>
<head>
<title>圣杯布局</title>
<style>
.header{
min-height: 50px;
border: 1px solid red;
text-align: center;
}
.footer{
clear:both;
min-height: 50px;
border: 1px solid red;
text-align: center;
}
.container {
padding: 0 210px 0 220px;
}
.container .grail {
min-height:900px;
float: left;
position: relative;
}
.main {
width: 100%;
background-color: red;
}
.left {
width: 220px;
background-color: blue;
margin-left: -100%;
left: -220px;
}
.right {
width: 210px;
background-color: yellow;
margin-left: -210px;
right: -210px;
}
</style>
</head>
<body>
<div class="header">header</div>
<div class="container">
<div class="grail main">
<h1>main</h1>
<h1>1.给出html结构</h1>
<h1>2.设置基本样式 中(width 100% left xxx1px right xxx2px)左右宽度高度颜色/h1>
<h1>3.将main元素都设置成左浮动,父元素container位置左右分别空出xxx1p|xxx2px </h1>
<h1>4.设置left元素和right元素负外边距 margin-left -xxx1p| -xxx2px </h1>
<h1>5.用相对定位将left和right分别移动留位置</h1></div>
<div class="grail left">left</div>
<div class="grail right">right</div>
</div>
<div class="footer">footer</div>
</body>
</html>
<html>
<head>
<title>双飞翼布局</title>
<style>
.container .grail {
min-height: 900px;
float: left;
}
.main {
width: 100%;
background-color: red;
}
.left {
width: 220px;
background-color: blue;
margin-left: -100%;
}
.right {
width: 210px;
background-color: yellow;
margin-left: -210px;
}
.content{
margin: 0 210px 0 220px;
}
</style>
</head>
<body>
<div class="container">
<div class="grail main">
<div class="content">
<h1>main</h1>
<h1>1.给出html结构</h1>
<h1>2.设置基本样式 中(width 100% left xxx1px right xxx2px)左右宽度高度颜色/h1>
<h1>3.设置left元素和right元素负外边距 margin-left -xxx1p| -xxx2px </h1>
<h1>4.将main里面的content元素设置外边距 -xxx1px| -xxx2px </h1>
</div>
</div>
<div class="grail left">left</div>
<div class="grail right">right</div>
</div>
</body>
</html>
<html>
<head>
<title>flex布局</title>
<style>
.header {
min-height: 50px;
border: 1px solid red;
text-align: center;
}
.footer {
clear: both;
min-height: 50px;
border: 1px solid red;
text-align: center;
}
.container {
display: flex;
min-height: 600px;
}
.main {
flex-grow: 1;
background-color: blue;
}
.left {
order: -1;
flex-basis: 200px;
background-color: red;
}
.right {
flex-basis: 300px;
background-color: yellow;
}
</style>
</head>
<body>
<div class="header">header</div>
<div class="container">
<div class="main">
<h1>main</h1>
<h1>1.给出html结构</h1>
<h1>2.将container设置成一个FLEX容器</h1>
<h1>3.将main left right元素进行初始设置背景颜色,根据order设置排列顺序</h1>
<h1>4.flex-grow设置main的放大比例</h1>
<h1>5.</h1></div>
<div class="left">left</div>
<div class="right">right</div>
</div>
<div class="footer">footer</div>
</body>
</html>